组合模式_设计模式结构性:组合模式(CompositePattern)
組合模式(Composite Pattern),又叫部分整體模式,是用于把一組相似的對象當作一個單一的對象。組合模式依據樹形結構來組合對象,用來表示部分以及整體層次。這種類型的設計模式屬于結構型模式,它創建了對象組的樹形結構。
這種模式創建了一個包含自己對象組的類。該類提供了修改相同對象組的方式。
我們通過下面的實例來演示組合模式的用法。實例演示了一個組織中員工的層次結構。
結構圖角色與理解組合模式共分為三種角色:
Component(抽象構件):葉子構件與容器構件共同繼承的父類或者是共同實現的接口,該角色中包含所有子類共有方法的聲明和實現,在抽象構件中定義了管理子構件的方法,新增構件、刪除構件、獲取構件。
Leaf(葉子構件):表示葉子節點,沒有子節點,對于繼承父類的管理子節點的方法以拋出異常的方式處理。
Composite(容器構件):表示容器節點,包含子節點,子節點可以是容器節點也可以是葉子節點,其提供一個集合來對子節點進行維護,以迭代的方式對子節點進行處理。
組合模式的關鍵是抽象構件類,它既可以表示葉子節點也可以表示容器節點,對于客戶端而言是統一對抽象構件進行處理的,抽象構件類和容器構件類是聚合關聯的關系,抽象構件類是容器構件類的一部分,這樣容器構件類對子構件進行處理時不用區分是葉子節點還是容器節點,能夠統一的做處理
抽象組件
容器節點
葉子節點
客戶端
- END -
總結
以上是生活随笔為你收集整理的组合模式_设计模式结构性:组合模式(CompositePattern)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java新建对象校验_验证某个对象是否是
- 下一篇: 移动商城html 源码,基于weui的移