設計模式11 組合模式

2021-08-08 19:17:39 字數 811 閱讀 1540

組合模式有時又叫部分-整體模式在處理類似樹形結構的問題時比較方便

分支類

public

class treenode

public string getname()

public

void

setname(string name)

public treenode getparent()

public

void

setparent(treenode parent)

//新增孩子節點

public

void

add(treenode node)

//刪除孩子節點

public

void

remove(treenode node)

//取得孩子節點

public enumerationgetchildren()

}

整體類

public

class tree

public

static

void

main(string args)

}

使用場景:將多個物件組合在一起進行操作,常用於表示樹形結構中,例如二叉樹,數等。

其他設計模式

設計模式11 組合模式

還是餐廳,多個餐廳合併,每個餐廳的選單實現方式不一樣,有的為arraylist有的為array.參見 10迭代器模式 增加餐後甜點子選單,需要改子選單和原選單列表中的選單項同級.原選單列表中都為menuitem,而現在還要增加子選單.要求如下 外鏈轉存失敗 img altdnffq 15661405...

設計模式8 組合模式

組合模式首先想到的就是樹形結構,比如我們常用的檔案結構,請看windows的檔案結構 無論是檔案或者是資料夾,常用操作都是一致的,比如 複製 貼上 剪下 刪除 所佔空間大小。我們並沒有刻意的去分他是資料夾還是檔案。我們可以把資料夾看成是組合物件,把每乙個檔案看成是單個物件。組合模式模糊了這兩個概念,...

《設計模式12 組合模式

組合模式其實是乙個很形象的模式。它也被稱為部分整體模式。組合模式的結構就如同樹狀圖一樣。而樹就是枝幹 葉子的組合,組合模式可以形象的這麼理解。其實資料夾是乙個很好的組合模式的體現。乙個資料夾 樹根root 下可能有多個資料夾 枝幹trunk 可能是單個的檔案 樹葉leaf 而枝幹是可以繼續向下延伸的...