枚举单例懒加载
来源:13-14 单例模式4

精慕门8059907
2021-12-04
请问如何可以证明枚举单例是懒加载呢?我测试了一下,而且通过自定义枚举类,枚举本质就是饿汉式吧:
public enum Singleton {
INSTANCE;
private Singleton(){
System.out.println(“私有构造方法”);
}
static {
System.out.println(“静态代码块”);
}
public void show(){
System.out.println(“实例方法”);
}
public static void say(){
System.out.println(“静态方法”);
}
}
public class SingletonTest {
public static void main(String[] args) {
Singleton.say();
}
}
运行结果:
私有构造方法
静态代码块
静态方法
结论:在main方法中,只是调用了Singleton 的静态方法,没有用到对象,但却执行了构造方法,这证明不是懒加载。
写回答
1回答
-
悟空
2021-12-04
你说得对,枚举类会在类加载的时候,把枚举对象给实例化
00
相似问题