java设计模式之单列
单列分为懒汉式和饿汉式 区别:
懒汉式节约内存(时间换空间)
饿汉式 :节约时间 (空间换时间)
代码注释比较详细:
package com.guzhenhua.by;
//懒汉式单例类.在第一次调用的时候实例化自己
public class Demo_single {
private static Demo_single demo_single;//2创建一个private static的对象引用
public static Demo_single getInstance(){ //3.对外暴露一个方法用于获取实例
if (demo_single==null) {
synchronized (Demo_single.class) { //4.考虑线程安全的问题,双重检查加锁
if(demo_single==null){
demo_single=new Demo_single();
}
}
}
return demo_single;
}
private Demo_single() { //1.私有构造方法防止外界直接new对象
}
}