
Composite的關(guān)鍵是一個抽象類,它既可以代表圖元,又可以你表圖元的容器。
參于者
Component
- --為組合中的對象聲明接口。
- --在適當(dāng)?shù)那闆r下,實現(xiàn)所有類共有接口的缺省行為。
- --聲明一個接口用于訪問和管理Composite的子組件。
- --(可選)在遞歸結(jié)構(gòu)中定義一個接口,用于訪問一個父部件,并在合適的情況下實現(xiàn)它。
- --在組合中表示葉節(jié)點對象,葉節(jié)點沒有子節(jié)點。
- --在組合中定義圖元對象的行為。
- --定義有子部件的那些部件的行為。
- --存儲子部件
- --通過Component接口操縱組合部件的對象。
適用性
你想表示對象的部份-整體層次結(jié)構(gòu)。
你希望用戶忽略組合對象與單個對象的不同,用戶將統(tǒng)一地使用組合結(jié)構(gòu)中的所有對象。