Java 单例设计模式

2019-11-10  本文已影响0人  我有清风有烈酒

思路

1.保证外面不可以随便创建对象---将构造方法私有。
2.在当前类中写一个当前类类型的属性(应式静态方法,因为要保证这个属性的对象是唯一的)。
3.提供一个方法供其他类引用。


实现:

1.私有构造方法
2.私有的、静态的当前类对象作为属性。
2.公有的静态方法返回当前对象。

单例模式分为三种:饿汉式(即时加载)、懒汉式(延迟加载)和生命周期托管(对象加载过程交给别人,略过。。。)

代码实现:

1.饿汉式(即时加载)

    //单例设计模式  饿汉式
    //1、私有构造方法
    private SingleTon(){}
    //2、私有  静态  属性
    private static SingleTon singleTon = new SingleTon();
    //3、公有  静态  方法  返回当前类
    public static SingleTon getSingleTon(){
        return singleTon;
    }

2.懒汉式(延迟加载)

    //单例设计模式   懒汉式(延迟加载)
    //1、私有构造函数
    private SingleTon2(){}
    //2、私有 静态 当想类属性  无需new出来
    private static SingleTon2 singleTon2;
    //3、给出一个公有 静态  返回当前类的方法
    public static SingleTon2 getSingleTon2(){
        //判断这个对象是否已经被创建
        if (singleTon2 == null){
            //未创建则创建对象
            singleTon2 = new SingleTon2();
        }
        return singleTon2;
    }
上一篇 下一篇

猜你喜欢

热点阅读