首页 » 设计模式之禅(第2版) » 设计模式之禅(第2版)全文在线阅读

《设计模式之禅(第2版)》7.2 单例模式的定义

关灯直达底部

单例模式(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{     }}