第十二篇 设计模式--享元模式
来源:互联网 发布:淘宝电话如何转人工 编辑:程序博客网 时间:2024/06/07 08:13
定义:运用共享技术有效地支持大量细粒度对象。
代码:
package flyweight_model;import java.util.Hashtable;/** * @author naivor *享元模式-场景类 */public class FlyweightModel {public static void main(String[] args) {FlyweightFactory factory=new FlyweightFactory();Flyweight flyweight=factory.getFlayweight("A");flyweight.operate();UnSharedFlyweight unFlyweight=new UnSharedFlyweight();unFlyweight.operate();}}/** * * @author naivor *享元模式-享元抽象类 */abstract class Flyweight{public abstract void operate();}/** * * @author naivor *享元模式-共享的Flyweight子类 */class SharedFlyweight extends Flyweight{@Overridepublic void operate() {//SharedFlyweight的业务逻辑}}/** * * @author naivor *享元模式-非共享的Flyweight子类 */class UnSharedFlyweight extends Flyweight{@Overridepublic void operate() {//UnSharedFlyweight的业务逻辑}}/** * * @author naivor *享元模式-享元工厂类 */class FlyweightFactory {private Hashtable<String, Flyweight> flyweights=new Hashtable<String, Flyweight>();public FlyweightFactory() {flyweights.put("A", new SharedFlyweight());flyweights.put("B", new SharedFlyweight());flyweights.put("C", new SharedFlyweight());}public Flyweight getFlayweight(String type){Flyweight flyweight=flyweights.get(type);if (flyweight==null) {flyweight=new SharedFlyweight();flyweights.put(type, flyweight);}return flyweight;}}
0 0
- 第十二篇 设计模式--享元模式
- 设计模式---享元模式
- 设计模式 享元模式
- 设计模式 - 享元模式
- 设计模式:享元模式
- 设计模式 - 享元模式
- 设计模式-享元模式
- 设计模式---------享元模式
- 设计模式:享元模式
- 设计模式--享元模式
- 设计模式-享元模式
- 设计模式:享元模式
- 设计模式-享元模式
- 设计模式--享元模式
- 设计模式--享元模式
- 设计模式--享元模式
- 设计模式-享元模式
- 设计模式-享元模式
- 独处空间 与 记录
- CF 290Div2 C Fox And Names
- 为按钮添加图标
- 一天一命令,天天五分钟(head, tail命令用法)
- 结构体指针实现插入排序和解决约瑟夫环问题
- 第十二篇 设计模式--享元模式
- uva 10183 uva 10519 uva 10516(java 大叔)
- ios 获取系统当前时间
- [Google Guava]-缓存清除
- ORacle9i下程序报错:“ora-12154 TNS 无法处理服务名”的解决办法
- JDK环境变量配置
- poj 2391 Ombrophobic Bovines (网络流)
- js判断来源的url是否是本站点过来的url
- java中的构造方法