未分类
2020-09-10 10:07:04
1822677238@qq.com
手机扫码查看
单例模式
单例(Singleton):只允许创建一个该类的对象。
方式1:饿汉式(类加载时创建,天生线程安全)
class Teacher{
private static final Teacher t=new Teacher();
private Teacher(){}
public static Teacher getInstance(){
return t;
}
}
方式2:懒汉式(使用时创建,线程不安全,加同步)
class Teacher{
private static Teacher t=null;
private Teacher(){}
public static synchronized Teacher getInstance(){
if (t == null) {
t=new Teacher();
}
return t;
}
}
方式3:懒汉式(使用时创建,线程安全)
class Teacher{
private Teacher(){}
private static class Holder{
static Teacher t=new Teacher();
}
public static Teacher getInstance(){
return Holder.t;
}
}



发表回复