Singleton模式适用情况:
当类只能有一个实例而且客户可以从一个众所周知的访问点访问它时
当这个唯一实例应该是通过子类化可扩展的,并且客户应该无需更改代码就能使用一个扩展的实例时
在任何情况下,Singleton模式都建议我们提供能够访问单例对象的公有静态方法。如果使用这个方法创建一个对象,该方法将承担确保仅创建一个实例的责任。
Singleton
定义一个Instance操作,允许客户访问它的唯一实例。Instance是一个类操作,可能负责创建它自己的唯一实例。
public class Singleton { private static Singleton sing; private Singleton() { } public static Singleton getInstance() { if (sing == null) { sing = new Singleton(); } return sing; } }
public class Test { public static void main(String[] args) { Singleton sing = Singleton.getInstance(); Singleton sing2 = Singleton.getInstance(); System.out.println(sing); System.out.println(sing2); } }
运行结果:
singleton.Singleton@1c78e57 singleton.Singleton@1c78e57
原文:http://blog.csdn.net/lindonglian/article/details/46317087