Hello World 通过扩展 App
object HelloWorld extends App {
println("Hello, world!")
}
通过扩展 App
特征 ,你可以避免定义明确的 main
方法。HelloWorld
对象的整个主体被视为主要方法。
Version < 2.11.0
延迟初始化
根据官方文档 ,
App
使用称为延迟初始化的功能。这意味着在调用 main 方法之后初始化对象字段。
Version >= 2.11.0
延迟初始化
根据官方文档 ,
App
使用称为 延迟初始化 的功能。这意味着在调用 main 方法之后初始化对象字段。
DelayedInit
现已被弃用以供一般使用,但仍然支持App
作为特例。支持将持续到确定并实施替换功能为止。
要在扩展 App
时访问命令行参数,请使用 this.args
:
object HelloWorld extends App {
println("Hello World!")
for {
arg <- this.args
} println(s"Arg=$arg")
}
当使用 App
时,对象的主体将作为 main
方法执行,不需要覆盖 main
。