23種設計模式 組合模式

2021-10-06 03:07:44 字數 1186 閱讀 5461

組合模式

無需關係處理的單個物件,還是組合的物件容器,實現容器之間的解耦合。當有新部件時容易新增進來。
1. 可以想象成樹結構

根節點(最上層)

public inte***ce iroot
2.分支節點(中間)

public inte***ce ibranch
3.葉子節點(最下層) 

public inte***ce ileaf
4.實現 

public class root implements iroot 

//增加樹枝節點

public void add(ibranch branch)

//增加葉子節點, 比如秘書, 直接隸屬於總經理

public void add(ileaf leaf)

//得到自己的資訊

public string getinfo() //得到下級的資訊

public arraylist getsubordinateinfo()

}

public class branch implements ibranch 

//增加乙個子樹枝節點

public void add(ibranch branch)

//增加乙個葉子節點

public void add(ileaf leaf)

//獲得自己樹枝節點的資訊

public string getinfo()

//獲得下級的資訊

public arraylist getsubordinateinfo()

}

public class leaf implements ileaf 

//最小的小兵只能獲得自己的資訊了

public string getinfo()

}

public class test 

//遍歷所有的樹枝節點, 列印出資訊

private static void getallsubordinateinfo(arraylist subordinatelist) else }}

}

23種設計模式(組合模式)

定義 有時又叫作部分 整體模式,它是一種將物件組合成樹狀的層次結構的模式,用來表示 部分 整體 的關係,使使用者對單個物件和組合物件具有一致的訪問性。1.結構需求 1.抽象構件 component 角色 它的主要作用是為樹葉構件和樹枝構件宣告公共介面,並實現它們的預設行為。在透明式的組合模式中抽象構...

23種設計模式之組合模式

應用場景 組合模式核心 抽象元件角色 public inte ce component 葉子構件角色 inte ce leaf extends component 容器構件角色 inte ce composite extends component 使用組合模式,模擬防毒軟體的架構設計!抽象構建 p...

23種設計模式之組合模式

1.組合模式又叫部分整體模式,它建立了物件組的樹形結構,將物件組合成樹狀結構以表示 部分 整體 的層次關係 2.組合模式依據樹形結構來組合物件,用來表示部分以及整體的層次關係 3.組合模式屬於結構型模式 4.組合模式能讓使用者對單個物件和組合物件的訪問具有一致性 1.component 這是組合中物...