听说你的程序还不会计划生育?(单例模式理论篇)
导语:单例模式可是设计模式中最常见、最简单的模式之一,也是教育机构中最常提的设计模式,因为在实际面试中也是频频出现,今天我们就好好谈谈设计模式中的计划生育——单例模式
什么是单例模式
单例模式解决的问题
单例模式的适用场景
-
Windows 的回收站可是经典的单例情景,对于整个操作系统的运行,回收站一直维护着唯一实例。 -
Windows 的任务管理器,刚刚提过了就不赘述了。 -
网站的计数器,为了方便同步,往往也采用的是单例模式。 -
应用程序的日志应用也是经典的单例模式,这是因为共享日志文件要长期处于打开状态,为了同步和追加新的内容,只能操作一个实例对象。 -
操作系统的文件系统,也属于单例模式,一个操作系统只能有一个文件系统,要不文件操作将变得乱七八糟。 -
网页应用的配置信息的读取,由于之前提过的资源共享,所以一般也都采用单例模式。 -
多线程的线程池的设计一般也要采用单例模式,因为这样方便线程池对当下线程的控制。 -
数据库连接池的设计往往采用单例模式,别怀疑这是真的,单例模式可以降低连接数据库导致的内耗。主要体现在节省了打开或者关闭数据库连接导致的效率损耗。 -
输出硬件往往都是以单例模式设计的,以最经典的打印机为例,每台电脑有若干打印机,为了避免两个打印任务同时分配给同一打印机,就需要设计成单例。 -
各种软件的属性文件存放给系统配置中,而系统管理这些属性文件也都是采用了单例模式的设计思路,也是为了避免权限操作混乱等各种问题。
单例模式的注意事项
结尾