单例模式的最佳实现方式

public class Singleton {
        // Private constructor prevents instantiation from other classes
        private Singleton() { }
 
        /**
        * SingletonHolder is loaded on the first execution of Singleton.getInstance() 
        * or the first access to SingletonHolder.INSTANCE, not before.
        */
        private static class SingletonHolder { 
                public static final Singleton INSTANCE = new Singleton();
        }
 
        public static Singleton getInstance() {
                return SingletonHolder.INSTANCE;
        }
}

99%的Java程序员实现不了一个完美的单例模式,看看Wiki上给出的最佳实现:http://t.cn/zOvZMy3 通过单例模式全面了解Double-checked locking以及并发时候的锁的问题:http://t.cn/aKbmIb

天生我才必有用,千金散去还复来!
原文地址:https://www.cnblogs.com/Jack-Lu/p/3143695.html