1. 程式人生 > >java享元模式例項

java享元模式例項

GoF對享元模式的描述是:運用共享技術有效地支援大量細粒度的物件。
Flyweight模式是構造型模式之一,它通過與其他類似物件共享資料來減小記憶體佔用。也就是說在一個系統中如果有多個相同的物件,那麼只共享一份就可以了,不必每個都去例項化一個物件。在Flyweight模式中,由於要產生各種各樣的物件,所以在Flyweight(享元)模式中常出現Factory模式。Flyweight的內部狀態是用來共享的,Flyweight factory負責維護一個物件儲存池(Flyweight Pool)來存放內部狀態的物件。為了呼叫方便,FlyweightFactory類一般使用Singleton模式實現。Flyweight模式是一個提高程式效率和效能的模式,會大大加快程式的執行速度。