享元模式
运用共享技术有效的支持大量细粒度的对象。
Flyweight Pattern
Use sharing to support large numbers of fine-grained objects efficiently.
类图

模式的结构与使用
享元方法模式的结构中包括三种角色。
+ 享元接口(Flyweight):是一个接口,该接口定义了享元对外公开其内部数据的方法,以及享元接收外部数据的方法。
+ 具体享元(Concrete Flyweight):实现享元接口的类,该类的实例称为享元对象,或简称享元。具体享元类的成员变量为享元对象的内部状态,享元对象的内部状态必须与所处的周围环境无关,即要保证使用享元对象的应用程序无法更改享元的内部状态,只有这样才能使得享元对象在系统中被共享。因为享元对象是用来共享的,所以不能允许用户各自地使用具体享元类来创建对象,这样就无法达到共享的目的,因为不同用户用具体享元类创建的对象显然是不同的,所以,具体享元类的构造方法必须是private的,其目的是不允许用户程序直接使用具体享元类来创建享元对象,创建和管理享元对象由享元工厂负责。
+ 享元工厂(Flyweight Factory):享元工厂是一个类,

享元模式是一种结构型设计模式,通过共享技术有效支持大量细粒度对象。文章详细介绍了享元模式的结构与使用,包括享元接口、具体享元和享元工厂的角色,以及享元模式的优点和适用场景。文中还提供了简单的代码示例,包括抽象享元类、享元工厂的实现和测试类。
订阅专栏 解锁全文
1297

被折叠的 条评论
为什么被折叠?



