前言
设计模式这有些忘了,回顾一下。
单例设计模式的设计思想是保证内存中只有一个对象。
饿汉式
在类启动的时候就去创建
public class SingleHungry {
private static SingleHungry singleHungry = new SingleHungry();
private SingleHungry(){
}
public static SingleHungry getInstance(){
return singleHungry;
}
}
懒汉式
public class SingleLan {
private static SingleLan singleSchema;
private SingleLan(){
}
public static synchronized SingleLan getInstance(){
if (singleSchema==null){
return new SingleLan();
}
return singleSchema;
}
}
比较
懒汉式:是不会出问题的设计模式
饿汉式:可能会出线程安全的问题
线程安全
1.是否是多线程
2.是否有共享数据
3.是否有多条语句操作共享数据
通过jdk源码,我们也能看出runtime
类也为单例模式
很多事情你想不通,别着急,过一段时间你再想,就想不起来了。