享元模式:就是为了共享对象,将已生成的对象存储起来,下次如果还是要这个对象,直接返回该存储的对象。也是我们工作中常用的设计模式
例子:
public class WebSiteFactory {
//集合,充当池的作用
private HashMap<String,ConcreteWebSite> pool = new HashMap<>();
//根据网站的类型,返回一个网站,如果没有就创建一个网站,并放入到池中,并返回
public WebSite getWebSiteCategory(String type){
if (!pool.containsKey(type)){
//创建一个网站,并放入到池中
pool.put(type, new ConcreteWebSite(type));
}
return pool.get(type);
}
public int getWebSiteCount(){
return pool.size();
}
}