//内部类实现懒汉式
public class Singleton {
private static class SingletonHolder{
//单例变量
private static Singleton instance = new Singleton();
}
//私有化的构造方法,保证外部的类不能通过构造器来实例化。
private Singleton() {
}
//获取单例对象实例
public static Singleton getInstance() {
System.out.println("我是内部类单例!");
return SingletonHolder.instance;
}
}
懒汉式(避免上面的资源浪 费)、线程安全、代码简单。因为java机制规定,内部类SingletonHolder只有在getInstance()方法第一次调用的时候才会被加 载(实现了lazy),而且其加载过程是线程安全的(实现线程安全)。内部类加载的时候实例化一次instance。
http://blog.youkuaiyun.com/liushuijinger/article/details/9069801

本文介绍了一种使用内部类实现的懒汉式单例模式。该模式利用Java的类加载机制确保线程安全地延迟实例化单例对象,同时避免了同步带来的性能开销。
234

被折叠的 条评论
为什么被折叠?



