【发布时间】:2015-07-16 13:50:57
【问题描述】:
在下面的代码 sn-ps 中有两个 Singleton 的实现。 它们都是在 Java 多线程环境中实现单例的正确方法吗?
如果是这样,那是否意味着第二种实现方式完全没用了,无论何时你想实现一个Singleton,就用枚举方式?
我最喜欢的写单例的方式:
public enum Singleton {
INSTANCE();
}
另一种写单例的方式(显式同步):
public class Singleton {
private static Singleton instance = null;
private Singleton() {}
public static synchronized Singleton getInstance() {
if (instanz == null) {
instanz = new Singleton();
}
return instanz;
}
【问题讨论】:
标签: java multithreading singleton