緩存(共享)可以共同的對象、屬性,避免創建大量的重復對象、內容。
二、Flyweight模式的特點:
為重復或可共享的對象、屬性設置一個緩沖,稱為內部屬性。這些內部屬性一般情況下都是不可修改的,也就是在第一個對象、屬性被創建后,就不會去修改了(否則就沒意義了)。
除了共享對象、屬性之外,還有一些是基于應用環境,或是實時數據,這些無法共享的東西我們稱為外部狀態。
在Flyweight模式應用中,通常修改的是外部狀態屬性,而內部狀態屬性一般都是用于參考或計算時引用。
三、Flyweight模式的構成:
Flyweight模式一般由幾個部分組成:
·Flyweight接口(抽象類) :定義了一個可共享的元類
·Flyweight實現類:實現了元類中的操作,而且可能會提供一個用于保存內部狀態(共享屬性)的空間
·Flyweight Factory:創建Flyweight的工廠類,創建后將其保存到Flyweight Pool中
·Flyweight Pool:緩沖Flyweight對象的池,通常包含在工廠類中


















也就是在緩沖這一點上,體現了Flyweight模式的精髓。
-------------------------------------------------------------
生活就像打牌,不是要抓一手好牌,而是要盡力打好一手爛牌。