public class Singleton{
private Singleton(){
}
public static Singleton getInstance(){
return SingletonHolder.sInstance;
}
private static class SingletonHolder{
private static final Singleton sInstance = new Singleton();
}
}
好处:
第一次 加载Singleton 并不会初始化sInstance
只有第一次调用getInstance 虚拟机才会加载SingletonHolder 并初始化sInstance
保证线程安全 Singleton 的唯一性
网友评论