【设计模式】单例模式

2020-03-03  本文已影响0人  盐果儿

一、定义:

保证一个类仅有一个实例,并提供一个访问它的全局访问点。

    注意:

    1、单例类只能有一个实例;

    2、单例类必须自己创建自己的唯一实例;

    3、单例类必须给所有其他对象提供这一实例。

二、原理:

判断系统是否已经有这个单例,如果有则返回,没有则创建。

三、优缺点:

    优点:

        1、内存里只有一个实例,减少内存开销,适用于频繁的创建和销毁实例的场景。

        2、避免资源多重占用,如:一个电脑连接两个打印机,打印一份文件,只通过一个打印机打印。

    缺点:没有接口,不能继承,与单一职责冲突(一个类应该只关心内部逻辑,不因该关心外面怎么实例化。)

四、示例:

创建Singleton类 从Singleton类获取唯一对象

五、单例模式实现方式

1、懒汉式

线程不安全 线程安全

2、饿汉式

线程安全
上一篇 下一篇

猜你喜欢

热点阅读