单例模式:
单例模式的写法:
1. 饿汉模式
public class Singleton{
private static Singleton instance=new Singletion();
private Singleton(){}
public static Singleton getInstance(){
return instance;
}
}
- 懒汉模式
直接synchroinzed
public class Singleton{
private static Singleton instance;
private Singleton(){}
public synchronized static Singleton getInstance(){
if(instance==null){
return new Sinleton();
}
return instance;
}
}
DCL
public class Singleton {
private static Singleton instance;
private Singleton(){}
public static Singleton getInstance(){
if(instance==null){
synchronized (Singleton.class){
if(instance==null){
return new Singleton();
}
}
}
return instance;
}
}
内部类
最推荐写法 enum