Loading

23种设计模式之享元模式(FlyWeight)

享元模式是一种对象结构型模式,通过运用共享技术,有效地支持大量细粒度的对象。系统只使用少量的对象,而这些对象都很相似,状态变化很小,对象使用次数增多。享元对象能做到共享的关键是区分内部状态和外部状态。内部状态存储在享元对象内部并且不会随坏境改变而改变,因此内部状态可以共享;外部状态时随环境改变而改变的、不可以共享的状态,享元对象的外部状态必须由客户端保存,并在享元对象被创建之后,在需要使用的时候再传入到享元对象内部,外部状态之间是相互独立的。

优点:

1)减少了要处理的对象数目。

2)如果对象能够持续,可以减少内存和存储设备。

使用场景:

1)应用程序使用大量的对象。

2)由于对象数目巨大,导致很高的存储开销。

3)应用程序不依赖于对象的身份。

FlyWeight 模式

posted @ 2017-04-10 15:48  guwei4037  阅读(135)  评论(0编辑  收藏  举报