单例模式,即一个类只允许创建一个对象


    单例模式java实现:
    饿汉式:不支持延迟加载
    懒汉式:性能问题
    双重检测:初始化操作和new操作要注意指令重排的问题
    静态内部类:可以做到延迟加载和唯一性以及线程安全
    枚举:最简单的实现方式


    单例模式的困境:

    • 不是基于接口编程
    • 对继承,多态的支持不友好
    • 对代码的扩展性不好(比如数据库连接池的从单例对象变成非单例对象)
    • 不支持有参数的构造函数