5. 创造型-单例模式
2021-05-06 本文已影响0人
Shimmer_
模式简述
- 有些对象在程序当中是无法存在多个的,例如车票售卖系统里,车票管理类只能有一个;图书系统当中借阅簿只能有一个,这些对象一旦存在多个,被随意使用,就必然会带来错误
- 单例对象的类只能允许一个实例存在,意味着只有通过该类提供的静态方法来得到该类的唯一实例,通过单例模式来控制对象的唯一。
使用目的
- 保证一个类仅有一个实例,并提供一个访问它的全局访问点
结构图
image使用设计模式的目的是为了让代码结构清晰,组织简单,避免过度设计
- 单例模式的重点主要在获取上。出于安全性考虑,可以直接使用饿汉式;兼顾内存及效率的考虑,这里延伸出了懒汉式的多重变种(去掉不安全的变种,就保留下双重校验法)、静态内部类、枚举的方式
- 代码Demo:单例模式:多种获取实现