【系统架构设计师】单例模式(Singleton Pattern)
单例模式详解
1. 什么是单例模式?
单例模式(Singleton Pattern)是一种创建型设计模式,它的目的是确保一个类只有一个实例,并且为整个系统提供一个全局访问点。换句话说,单例模式会限制类的实例化次数,使得在整个应用程序运行期间,类只有一个对象实例。无论何时何地访问该类,都将返回同一个实例。
1.1 适用场景
- 当一个类的多个实例会导致系统逻辑错误时,例如:日志记录器、数据库连接池、配置文件管理器等。多个实例可能导致混乱和资源浪费。
- 需要节省资源时,比如创建某些对象代价较大且频繁使用。
- 全局管理共享资源时,例如:线程池、缓存等,这些资源在整个应用中应该是唯一的。
2. 单例模式的优势
2.1 节省内存开销
单例模式通过确保只创建一个对象来避免不必要的内存开销。尤其是在构造和销毁对象比较耗费资源时,单例模式显得尤为重要。
2.2 提供全局访问点
单例模式为一个类提供了全局唯一的访问点,可以确保其他对象