Scala Note – scala.App分析

traitApp extends DelayedInit
简单来说,App特质可以快速将一个objects变成一个可执行程序,它内部实现了main的方法。注意:真正的功能实现使用DelayedInit来实现,这意味着object的fields在main方法执行前不会被初始化。这个类一般用于多线程应用等实现。
示例如下

这里Main继承了App特质中的main方法,args返回了当前命令行参数的数组。
scala.App代码分析

下面的例子使用了scala.App来实现一个trait之间的继承:

执行结果:

参考
Scala 10.4 Source

Posted in Dev, Java|Scala.