这两种实现单例的方式在功能上有什么区别吗?
public class MySingleton {
private static MySingleton instance;
public static MySingleton getInstance() {
if (instance == null) {
instance = new MySingleton();
}
return instance;
}
}
public class MySingleton {
private static final MySingleton instance = new MySingleton();
public static MySingleton getInstance() {
return instance;
}
}
除了第一种方法允许使用某种 clearInstance() 方法这一事实之外。尽管您可以在第二种方法中使实例不是最终的。
第一种方法在技术上是否表现更好,因为它只在第一次需要时才被初始化,而不是在程序启动时?
慕沐林林
喵喵时光机
倚天杖
相关分类