懒汉式单例和饿汉式单利的区别
区别:
饿汉式单例
public class EHan(){
//私有化类,让EHan类不能被new
private EHan(){
}
//私有化一个static 类型的 EHan()对象
private static EHan e= new EHan();
//方法
public static EHan findEHan(){
return e;
}
}
懒汉式单例
public class LanHan{
//私有化类
private LanHan(){}
//私有化属性
private volatile static LanHan lanHan;
//判断 lanHan是否为空
public static LanHan findLanHan (){
if(ehan==null){
synchronized(LanHan .class){
lanHan = new LanHan ();
return lanHan;
}
}
return lanHan;
}
}