让我们以通常的单身人士为例。
public class Single1 {
private static final Single1 INSTANCE = new Single1();
private Single1() {
System.out.println("Single1 - Constructor");
}
public static Single1 getInstance(){
System.out.println("Single1.getInstance");
return INSTANCE;
}
}
在构造函数中,我们将输出到 System.out。程序运行时,可以看到第一次调用getInstance时调用了构造函数!但是,这个单例被认为是非惰性的,并且在加载类时立即初始化。问题:我做错了什么?