单例模式-枚举方式
1 /** 2 * 单例模式-枚举方式 3 */ 4 public class SingletonTest08{ 5 public static void main(String[] args) { 6 Singleton instanceOne = Singleton.INSTANCE; 7 Singleton instanceTwo = Singleton.INSTANCE; 8 // out: true 9 System.out.println(instanceOne == instanceTwo); 10 instanceOne.sayOK(); 11 } 12 } 13 14 enum Singleton { 15 /** 16 * 枚举属性 17 */ 18 INSTANCE; 19 public void sayOK() { 20 System.out.println("ok!"); 21 } 22 }
枚举:
优缺点:
1) 这种借助JDK1.5中添加的枚举来实现单例模式。不仅能避免多线程同步问题,而且还能防止反序列化重新创建新的对象。
2) 这种方式Effective Java作者Josh Bloch提倡的方式。
3) 结论:推荐使用

浙公网安备 33010602011771号