手抄报 安全手抄报 手抄报内容 手抄报图片 英语手抄报 清明节手抄报 节约用水手抄报

设计模式1:单例模式

时间:2024-11-02 03:07:34

单例模式(Singleton Pattern)在设计模式中是一个比较简单的模式。它的目的只有一个:确保一个程序进程中某个类的实例只有一个。下面我介绍下单例模式

设计模式1:单例模式

工具/原料

设计模式

Java

单例模式

1、定义: 确保某一个类只有一个实例, 为整个应用提供这个类的实例

设计模式1:单例模式

2、意义

设计模式1:单例模式

3、一个简单的实现。在创建Singleton实例时,建议使用synchronized,确保多线程调用时,内存中只会实例化一个对象。

设计模式1:单例模式

单例的应用场景

1、单例模式定义为内存中只存在一个实例,因此单例模式对于那些频繁在内存中创建或者销毁的对象,可以极大减少内存消耗。由于单例的这种特性,我们常常将单例应用在下面这些场景上

设计模式1:单例模式
设计模式1:单例模式

2、缓存系统配置当从服务端获取程序的配置时,由于很多时候配置都是在程序初始化是获取的,而且这种配置会应用到多个模块中,所以我们一般使用单例来获取以及混存程序的配置。程序需要某项配置时,统一通过单例的实例获得。这样可以保证在程序的一次生命周期中只需要申请一次或者少数几次,就可以拿到可以在频繁使用的配置。

设计模式1:单例模式

3、读写文件很多时候程序中需要频繁读写某个文件,可以将读写代码设计为单例,通过单例操作文件,可以减少文件的读写频度

设计模式1:单例模式

4、生成序列码/唯一码当多个客户端同时访问程序来获取序列码时,此时使用单例,可以避免生成重复的序列码

设计模式1:单例模式

单例模式的缺点

1、不便于测试

2、违背了单一职责原则

© 手抄报圈