设计模式(java)-单例(饿汉)

public class singleton1 {
    public static void main(String[] args) {
        Singleton instance = Singleton.getInstance();
        Singleton instance2 = Singleton.getInstance();
        System.out.println(instance ==instance2);
    }
}
    // 饿汉式 (静态常量)
    class  Singleton{
        // 1.构造器私有化,外部不能new
        private Singleton(){

        }
        // 2.本类内部创建对象实例
        private final  static Singleton instance = new Singleton();
        // 3. 提供一个共有的静态方法,返回实例对象
        public  static  Singleton getInstance (){
            return instance;
        }
    }

饿汉式(静态常量)

优缺点 ;

1.优点 :写法简单,在类加载的时候完成了实例化。避免了线程同步的问题。

2.缺点:在类加载的时候就完成实例化,没有达到 Lazy Loading 的效果。如果没有使用这个实例,则会造成内存的浪费。

posted @ 2020-07-28 13:54  知语123  阅读(29)  评论(0)    收藏  举报