首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> 關於C語言

C# 設計模式:享元模式 (3) - 複合享元模式結構與角色分析

     編輯:關於C語言

複合享元結構 (UML)

五大角色

  1. Flyweight (抽象享元):定義公共介面,需外在狀態的方法以參數傳入。不強制共享。
  2. ConcreteFlyweight (具體享元):實作介面,儲存內在狀態 (與環境無關),可共享。亦稱單純具體享元。
  3. UnsharableFlyweight (複合享元):不可共享,但可分解為多個單純享元組合。由合成模式構建。
  4. FlyweightFactory (享元工廠):建立/管理享元,檢查現有實例決定重用或新建。
  5. Client (客戶端):維護享元引用,自行儲存所有外在狀態。

注意

複合享元結合享元 + 合成模式,確保同一複合享元內的所有單純享元擁有相同外在狀態,內在狀態各異。程式碼較複雜,詳見《Java與模式》第 31 章。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved