一、概念 組合模式:允許你將對象組合成樹形結構來表現“整體/部分”層次結構。組合能讓客戶以一致的方式處理個別對象以及對象組合。 組合包含組件。組件有兩種:組合和葉節點元素。組合持有一群孩子,這些孩子可以是別的組合或者葉節點元素。 角色: 組合部件(Component):它是一個抽象角色, ...
一、概念
- 組合模式:允許你將對象組合成樹形結構來表現“整體/部分”層次結構。組合能讓客戶以一致的方式處理個別對象以及對象組合。
- 組合包含組件。組件有兩種:組合和葉節點元素。組合持有一群孩子,這些孩子可以是別的組合或者葉節點元素。
- 角色:
組合部件(Component):它是一個抽象角色,為要組合的對象提供統一的介面。
葉子節點(Leaf):定義無子節點的行為,在組合中表示葉子節點對象,葉子節點不能有子節點。
組合節點(Composite):定義有子節點的行為,用來存儲部件,實現在Component介面中的有關操作,如增加(Add)和刪除(Remove)。
二、Demo 實現
TOPIC:我們的任務是想實現一個樹形結構的菜單,如下~