package com.catherine.singleton;

/**
 * Created by Catherine on 2016/10/4.
 * Soft-World Inc.
 * catherine919@soft-world.com.tw
 */

/**
 * 单例模式：保证整个应用中某个实例有且只有一个。
 * <p>
 * 内部静态类
 * 特点是加载类时比较快，但运行时获取对象的速度比较慢，线程安全
 * 只要应用中不使用内部类 JVM 就不会去加载这个单例类，也就不会创建单例对象，从而实现懒汉式的延迟加载和线程安全。
 */
public class BillPughSingleton {
    private BillPughSingleton() {
    }

    //内部类，在装载该内部类时才会去创建单利对象
    private static class SingletonHolder {
        private static BillPughSingleton instance = new BillPughSingleton();
    }

    public static BillPughSingleton getInstance() {
        return SingletonHolder.instance;
    }

    public void print() {
        System.out.println("Singleton:BillPughSingleton");
    }
}
@@ -269,16 +269,113 @@
 %E8%BD%BD%E5%92%8C%E7%BA%BF%E7%A8%8B%E5%AE%89%E5%85%A8%E3%80%82%0A
+ * %E5%8A%A0%E8%BD%BDBillPughSingleton%E6%97%B6%EF%BC%8C%E5%B9%B6%E6%B2%A1%E6%9C%89%E5%8A%A0%E8%BD%BDSingletonHolder%EF%BC%8C%E8%BF%99%E5%B0%B1%E6%98%AF%E4%B8%BA%E5%95%A5%E8%83%BD%E5%BB%B6%E8%BF%9F%E5%8A%A0%E8%BD%BD%E3%80%82%0A * %E4%B8%BA%E4%BB%80%E4%B9%88%E6%98%AF%E7%BA%BF%E7%A8%8B%E5%AE%89%E5%85%A8%E6%98%AF%E5%9B%A0%E4%B8%BA%E8%99%9A%E6%8B%9F%E6%9C%BA%E6%9C%89%E5%AF%B9%E7%B1%BB%E5%8A%A0%E8%BD%BD%E5%81%9A%E5%A4%84%E7%90%86%EF%BC%8C%E7%A1%AE%E4%BF%9D%E7%B1%BB%E5%8A%A0%E8%BD%BD%E4%B8%80%E5%AE%9A%E6%98%AF%E7%BA%BF%E7%A8%8B%E5%AE%89%E5%85%A8%E3%80%82%0A
  */%0Apubl
@@ -791,8 +791,9 @@
 %0A    %7D%0A%7D
+%0A

Update BillPughSingleton.java