learning之享元模式
来源:互联网 发布:帕克斯软件 编辑:程序博客网 时间:2024/06/05 18:42
享元模式:享元模式以共享的方式高效地支持大量细粒度对象的重用,就是对象复用,以节省内存和创建消耗。
ConcreteFlyweight:具体的共享的享元对象;
UnsharedConcreteFlyweight:非共享部分;
FlyweightFactory:工厂方法管理享元对象池和创建享元对象。
图片来自网络:
实例:
//抽象基类或接口public interface Car { public void run();}
//具体的对象public class ConcreatCar implements Car{ private String carInfo; public ConcreatCar(String state){ carInfo=state; } @Override public void run() { System.out.print("car state :"+carInfo); }}
//享元对象工厂方法public class CarFactory { HashMap<String,Car> cars=new HashMap<>(); public Car getCar(String key){ if(cars.get(key)==null){ ConcreatCar concreatCar=new ConcreatCar(key); cars.put(key,concreatCar); return concreatCar; }else { return cars.get(key); } } public int size(){ return cars.size(); }}
public class Test { public static void main(String[] args){ CarFactory carFactory=new CarFactory(); Car concreatCar1=carFactory.getCar("yellow"); Car concreatCar2=carFactory.getCar("blue"); Car concreatCar3=carFactory.getCar("yellow"); Car concreatCar4=carFactory.getCar("yellow"); System.out.print("Cars pool size: "+carFactory.size());//size=2 }}
阅读全文
0 0
- learning之享元模式
- 模式之享元模式
- 泡妞之享元模式
- 设计模式之享元
- 设计模式之享元
- 设计模式 之 享元
- 设计模式之享元
- 设计模式之享元
- GOF之享元模式
- 设计模式之Flyweight享元模式
- 设计模式之享元模式
- 设计模式之享元模式
- 设计模式之享元模式
- 设计模式之享元模式
- 设计模式之享元模式
- 设计模式之享元模式
- 结构模式之享元模式注解
- java设计模式之享元模式
- Intellij2017关联jar包和源码
- 计数排序和基数排序
- 二叉树总结
- Linux 环境下编译安装MySQL5.6
- JDK8下maven使用maven-javadoc-plugin插件报错
- learning之享元模式
- JavaScript为动态生成的标签绑定事件-参数
- android wifi调试
- Android Wi-Fi 无缝漫游 Seamless Roaming
- C++11Lambda捕获列表使用
- LaTeX中数学符号和公式字体加粗的方法
- 广播数据类型定义
- 如何简单的理解JavaWeb中的mvc?
- windows下设置PHP环境变量