享元模式英文叫flyweight pattern。flyweight,應該是乙個來自於拳擊術語,最輕量級,也叫蠅量級。次奧,我看《大話設計模式》這本書的時候,一直錯看成 亨元模式,搞不懂為什麼叫這個名字。現在看清楚了,是享元,共享的享,就比較好理解了。
享元模式,就是共享、重用一些現成的物件,免得構造太多,消耗資源巨大。因此,享元模式是 單例模式 + 簡單工廠模式。
在享元模式中引入了享元工廠類,享元工廠類的作用在於提供乙個用於儲存享元物件的享元池,當使用者需要物件時,首先從享元池中獲取,如果享元池中不存在,則建立乙個新的享元物件返回給使用者,並在享元池中儲存該新增物件。
class flyweightfactory
//如果物件不存在,先建立乙個新的物件新增到享元池中,然後返回
else }}
設計模式之享元模式學習筆記
享元模式是池技術 string常量池 資料庫連線池 緩衝池等 的重要實現方式,可以減少應用程式建立物件,降低程式記憶體的占用,提高效能。使用共享物件,有效的大量細粒度的物件 1.flyweight 抽象享元角色,同時定義出物件的外部和內部狀態的介面或實現 2.concreteflyweight 具體...
設計模式學習筆記(14) 享元模式
享元模式 1.介紹 享元模式 flyweight pattern 主要用於減少建立物件的數量,以減少記憶體占用和提高效能。這種型別的設計模式屬於結構型模式,它提供了減少物件數量從而改善應用所需的物件結構的方式。2.方法 運用共享技術有效地支援大量細粒度的物件。3.主要解決 在有大量物件時,有可能會造...
享元模式 設計模式學習
享元模式 flyweight 運用共享技術有效地支援大量細粒度的物件。下面給出享元模式的結構圖 下面給出享元模式的基本 結構 namespace concreteflyweight是繼承flyweight或實現flyweight介面,並為內部狀態增加儲存空間 class concreteflywei...