单例模式
单例模式,也叫单子模式,是一种常用的设计模式。是为确保一个类只有一个实例,并为整个系统提供一个全局访问点的一种方法。
单例模式有以下特点:
1.单例类只能有一个实例;
2.单例类必须自己创建自己的唯一实类;
3.单例类必须给所有其他对象提供这一实例。
饿汉单例
1.私有化构造函数。
2.声明本类的引用类型变量,并使该变量指向本类对象。
3.提供一个公共的静态方法获取本类对象。
public class Hungry {
private Hungry(){}
private static Hungry ex=new Hungry();
public static Hungry getInstance(){
return ex;
}
}
饱汉单例
1.私有化构造函数。
2.声明本类的引用类型变量,但不要创建对象。
3.提供公共静态方法来获取本类的对象,获取前需要判断是否已经创建了本类对象,若创建了,则直接返回本类对象,若没有,则先创建本类对象,然后再返回。
public class Full {
private Full(){}
private static Full ex;
public static Full getInstance(){
if(ex==null){
ex=new Full();
}
return ex;
}
}