一:概述
所谓单例模式,就是一个类只一个实例对象,该实例对象具有唯一性,外部访问到的对象都是同一对象实例
二:实现思路
1.构造函数私有化,确保外部通过new关键字无法创建新的实例对象
2.要有一个全局变量供外部访问(可以是静态变量)
3.要在本类创建出实例对象,确保有对象实例
三:类型
单例模式分为饿汉模式与懒汉模式:
1.饿汉模式:饿了就要吃,即任何时候访问都要有对象准备好随时被访问,可以在类初始化的时候创建该对象;
public class Singo{
? ? ? ? private Singo(){} // 构造函数私有化,禁止外部创建对象
? ? ? ? static instance = new Singo();
}
2.懒汉模式:只有在调用的时候对象才会被创建,例如把创建实例放在一个方法里,那么只有调用该方法的时候该对象才会被创建
public class Singo{
? ? ? ? private Singo(){} // 构造函数私有化,禁止外部创建对象
? ? ? ? private static instance;
? ? ? ? public static Singo getInstance(){
? ? ? ? if(this.instance==null){
? ? ? ? instance = new Singo();
????????????????}? ? ?
?????????????return this.instance??
????????}
}
|