单例模式

1、概述
单例模式:确保一个类只有一个实例,并提供一个全局访问点来访问这个唯一实例。

2、结构与实现
单例模式是结构最简单的设计模式,它只包含一个类,即单例类。
单例模式的目的是保证一个类有且仅有一个实例,并提供一个访问它的全局访问点。
单例模式在实现过程中,需要注意以下3点:
(1)、单例类构造函数的可见性为private
(2)、提供一个类型为自身的静态私有成员变量
(3)、提供一个公有的静态工厂方法

3、优点
(1)、提供了对唯一实例的受控访问
(2)、由于在系统内存中只存在一个对象,因此可以节约系统资源,对于一些需要频繁创建和销毁的对象,使用单例模式无疑可以提供系统的性能
(3)、单例模式允许可变数目的实例

4、缺点
(1)、由于单例模式中没有抽象层,因此,单例类的扩展有很大的困难
(2)、单例类的职责过重,在一定程度上违背了单一职责原则

5、适用环境
(1)、系统只需要一个实例对象
(2)、客户调用类的单个实例只允许使用一个公共访问点,除了该公共访问点,不能通过其他途径访问该实例


6、代码实例

https://github.com/ahao214/SingletonSample

原文地址:https://www.cnblogs.com/ahao214/p/13415806.html