单例模式:在系统里面,节省内存资源,保证数据内容的一致性,对某些类,要求只能创建一个实例。
3个特点:只有唯一实例对象;由单例类自行创建;对外提供一个访问该单例的全局访问节点。
优点:
减少内存开销(因为只有一个实例)
避免对资源的多重占用
设置全局访问点,可以优化和共享资源的访问。
单例模式是设计模式中最简单的模式之一。普通的构造函数是public的,外部类就可以通过new 构造函数()来创建很多实例。所以单例类要保证构造函数私有,来保证外部不能new出来。
(1)将构造方法私有化,使其不能在类的外部通过new关键字实例化该类对象。
(2)在该类内部产生一个唯一的实例化对象,并且将其封装为private static类型。
(3)定义一个静态方法返回这个唯一对象。
public class Singleton()
{
private static Singleton instance;
private Singleton(){}
public static Singleton getInstance(){
if(instance==NULL)
{
instance = new Singleton();
}
return instaance;
}
}