享元模式

寵の児 提交于 2019-12-04 06:38:35

定义:提取相似之处作为共享技术

优:

    相同对象只要保留一份,降低了系统中对象的数量

缺:

    1.为了使对象共享,须将一些不能共享的状态外部化,将增加程序的负责性

    2.读取享元模式的外部状态,使得运行时间稍变长

状态:

    1.内部状态:即不会随着环境的改变而改变的可共享部分

    2.外部状态:随着环境改变而改变的不可共享的部分

结构:

    1.抽象享元角色(Flyweight):是所有具体享元类的基类,为具体的享元规范需要实现的公共接口,非享元的外部状态以参数的形式通过方法传入

    2.具体享元角色(Concrete Flyweight):实现1的接口

    3.非享元角色(Unsharable Flyweight):是外部状态

    4.享元工厂角色(Flyweight Factory):创建和管理享元角色,根据客户端需要的对象,将其返回

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!