享元模式
享元模式
(1)定义
运用共享技术有效地支持大量细粒度对象的复用。系统只使用少量的对象,而这些 对象都很相似,状态变化很小,可以实现对象的多次复用。由于享元模式要求能够 共享的对象必须是细粒度对象,因此它又称为轻量级模式,它是一种对象结构型模 式。
(2)动机
在享元模式中可以共享的相同内容称为内部状态(Intrinsic State),而那些需要外部 环境来设置的不能共享的内容称为外部状态(Extrinsic State),由于区分了内部状态 和外部状态,因此可以通过设置不同的外部状态使得相同的对象可以具有一些不同 的特征,而相同的内部状态是可以共享的。
在享元模式中通常会出现工厂模式,需要创建一个享元工厂来负责维护一个享元池 (Flyweight Pool)用于存储具有相同内部状态的享元对象。
享元对象一般都设计为较小的对象,它所包含的内部状态较少,这种对象也称为细 粒度对象。享元模式的目的就是使用共享技术来实现大量细粒度对象的复用
(3)类图


浙公网安备 33010602011771号