考虑一个Java class with static fields only而没有构造函数:
public class OnlyStatic {
static O1 o1 = new o1();
static O2 o2 = new o2();
public static int compute(int whatever) {
return o1.foo+o2.bar+whatever;
}
}
在其他课程中,compute
使用方法static import
:
static import OnlyStatic.compute
int a = OnlyStatic.compute(3);
或直接,假设呼叫者在同一个包中:
int a = OnlyStatic.compute(3);
o1和o2何时初始化?在导入时,还是第一次调用compute()
时?