单例模式(Singleton Pattern)是一个比较简单的模式,其定义如下:
Ensure a class has only one instance, and provide a global point of access to it.(确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。)
单例模式的通用类图如图7-2所示。
图7-2 单例模式通用类图
Singleton类称为单例类,通过使用private的构造函数确保了在一个应用中只产生一个实例,并且是自行实例化的(在Singleton中自己使用new Singleton)。单例模式的通用源代码如代码清单7-3所示。
代码清单7-3 单例模式通用代码
public class Singleton { private static final Singleton singleton = new Singleton; //限制产生多个对象 private Singleton{ } //通过该方法获得实例对象 public static Singleton getSingleton{ return singleton; } //类中其他方法,尽量是static public static void doSomething{ }}