//线程安全
public class Singleton{
private Singleton(){}
private static Singleton s=new Singleton();
pubic static Singleton getInstance(){
return s;
}
}
//非线程安全+延迟初始化
public class Singleton{
private Singleton(){}
private static Singleton s=null;
pubic static Singleton getInstance(){
if(s==null)return s;
return s=new Singleton();
}
}
//线程安全+延迟初始化
public class Singleton {
private Singleton() {}
private static class Holder { //holds the singleton class
private static final Singleton s= new Singleton();
}
public static Singleton getInstance() {
return Holder.s;
}
}
//线程安全 枚举实现
enum Singleton{
INSTANCE;
//其他方法
}