24.面向对象-----单例模式

1.定义

  所谓类的单例设计模式,就是采取一定的方法保证在整个的软件系统中,对某个类只能存在一个对象实例,并且该类只提供一个取得其对象实例的方法。

2.恶汉式

class Singleton{
    //1.私有化构造器
    private Singleton(){

    }

    //2.类内部提供一个当前类的私有实例
    //3.此实例也必须静态化
    private static Singleton single = new Singleton();

    //4.提供公共的静态方法返回当前对象
    public static Singleton getInstance(){
        return single;
    }
}

3.懒汉式

class Singleton{
    //1.私有化构造器
    private Singleton(){

    }

    //2.类内部提供一个当前类的私有实例
    //3.此实例也必须静态化
    private static Singleton single;

    //4.提供公共的静态方法返回当前对象
    public static Singleton getInstance(){
        if (single == null) {
            single = new Singleton();
        }
        return single;
    }
}

注意:懒汉式存在线程安全问题。

作者:Java之美

日期:2020-03-29

猜你喜欢

转载自www.cnblogs.com/897463196-a/p/12593584.html