第6章:单例模式-确保对象的唯一性(重点)
定义:
单例模式(Singleton Pattern):确保某一个类只一个实例,而且自行实例化并向整个系统提供这个实例,这个类称为单例类,它提供全局访问的方法。
三个要点:
- 一是某个类只能一个实例;
- 二是它必须自行创建这个实例;
- 三是它必须自行向整个系统提供这个实例;
任务管理器存在唯一性
结构:
代码实现:
应用实例:
//负载均衡器LoadBalancer:单例类,
class LoadBalancer {
//1.私静态成员变量,存储唯一实例
private static LoadBalancer instance = null;
//服务器集合
private List serverList = null;
//2.私构造函数,防止new
private LoadBalancer() {
serverList = new ArrayList();
}
//3.公有静态成员方法,返回唯一实例
public static LoadBalancer getLoadBalancer() {
if (instance == null) {
instance = new LoadBalancer();
}
return instance;
}
//增加服务器
public void addServer(String server) {
serverList.add(server);
}
//删除服务器
public void removeServer(String server) {
serverList.remove(server);
}
//使用Random类随机获取服务器
public String getServer() {
Random random = new Random();
int i