“懒汉式”是在你真正用到的时候,需要调用getInstance()方法的时候,才会去创建这个单例对象;
”饿汉式“是不管你需不需要用到,都会去new Singleton()提前创建好这个单例对象。
//线程安全的懒汉式单例模式
public class Singleton {
private static Singleton instance;
private Singleton(){}
public static Singleton getInstance(){
if (instance == null){
synchronized(Singleton.class){
instance = new Singleton();
}
}
return instance;
}
}
//饿汉式单例模式
public class Singleton {
private static Singleton instance = new Singleton();
private Singleton(){}
public static Singleton getInstance(){
return instance;
}
}