单例模式:
保证一个类仅有一个实例,并提供一个访问它的全局访问点。
适用于:当类只能有一个实例,而且客户可以从一个明显的访问点访问它时,当这个唯一实例应该是通过子类化可扩展的,并且客户应该无需修改代码就能使用一个扩展实例时,
//Singleton类通过定义一个私有变量uniqueInstance来记录单例类的唯一实例;私有方法Singleton()来防
//止外界使用nwe关键字来创建该类的实例;公有的方法GetInstance()来提供一个该类实例的唯一全局访问点。
public dass Singleton
{
//私有变量uniqueInstance来记录Singleton的唯一实例
private static Singleton uniqueInstance;
//私有的构造函数
private Singleton()
{
}
//定义公有的方法GetInstance()来提供该类的唯一全局访问点
public static Singleton GetInstance()
{
//如果实例不存在,则New一个新的实例,否则返回已有实例
if(uniqueInstace==null)
{
uniqueInstance=new Singleton();
}
return uniqueInstance;
}
}
单例模式之所以存在,就好比在我们的操作系统中某个对象只需要一个实例的情况下,例如:操作系统中只能有一个任务管理器,操作文件时,同一个时间内只允许一个实例对其操作,在现实生活中也有这样的应用场景,所以在软件设计方面也需要存在单例模式!