在
object O {
// construction code and member initialization
}
Run Code Online (Sandbox Code Playgroud)
构造,这个代码何时运行?
Mic*_*mer 12
O第一次访问时会调用代码(某些方法或某些属性).例如以下程序
object O {
println("Hello from O")
def doSome() {}
}
object App extends Application {
println("Before O")
O.doSome()
println("After O")
}
Run Code Online (Sandbox Code Playgroud)
会屈服
Before O
Hello From O
After O
Run Code Online (Sandbox Code Playgroud)
简单定义是不够的O.此外,Class.forName("O")由于编译对象的名称是调用它将无法调用O$,因此调用Class.forName("O$")将执行.
| 归档时间: |
|
| 查看次数: |
302 次 |
| 最近记录: |