設計模式 十三 組合模式

2021-09-28 21:27:12 字數 1200 閱讀 4753

優點缺點

乙個目錄抽象類

目錄:此時產生了子目錄items,存在遞迴關係。

/**

* 課程目錄

*/public

class

coursecatalog

extends

catalogcomponent

// 刪除一門課程

@override

public

void

add(catalogcomponent catalogcomponent)

//@override

public string getname

(catalogcomponent catalogcomponent)

@override

public

void

remove

(catalogcomponent catalogcomponent)

@override

public

void

print()

} catalogcomponent.

print()

;//遞迴列印自己的子目錄}}

}

課程

測試

/**

* 測試

*/public

class

test

}

組合模式對test客戶端的使用來說就是單純的列印,在coursecatalog封裝了乙個遞迴的列印操作。對客戶端來說,無論列印哪個目錄都是imoocmaincoursecatalog.print();

原始碼:

組合模式 設計模式 組合模式

1.需求分析 假設要給乙個大公司做辦公管理系統,公司有人力資源部 財務部等,然後公司在其他城市還有分公司,分公司也有自己的人力資源部 財務部等,要求總公司 分公司以及各部分成樹狀結構管理。要完成這麼乙個系統,為了有乙個更好的設計,方便開發的展開,就需要了解乙個設計模式 組合模式。2.定義 將物件組合...

二十三種設計模式之組合模式

組合模式 將物件聚合成樹形結構來表現 整體 部分 的層次結構。組合模式能讓客戶以一致的方式來處理個別物件以及物件組合。也就是我們可以忽略物件組合與個體之間的差別。應用場景 餐廳合併列印主選單 子選單 public abstract class menucomponent public string ...

設計模式 組合模式 組合模式使用

目錄 組合模式概括 組合模式使用場景 定義 將物件組合成樹形結構以表示 部分 整體 的層次結構 作用 使客戶端對單個物件和組合物件保持一致的處理方式 使用場景 1.希望客戶端可以忽略組合物件與單個物件的差異時 2.處理乙個樹形結構時 優點 清楚的定義分層次的複雜物件,表示物件的全部或部分層次 讓客戶...