設計模式 結構型之組合模式

2021-10-13 05:32:15 字數 872 閱讀 3120

為了將具有樹形結構的特殊邏輯和通常邏輯解耦,將特殊邏輯抽離,並和通常邏輯受統一的介面約束,這樣的類結構叫組合模式

組合模式由三部分組成:

統一介面:

public

inte***ce

compoisite

葉子結點:

public

class

leaf

implements

compoisite

@override

public

void

dosth()

}

分支節點:

public

class

branch

implements

compoisite

public

void

add(compoisite compoisite)

@override

public

void

dosth()

}

使用:

public

static

void

main

(string[

] args)

1 part do stha

2 part do stha

3 part do stha

4 part do stha

b whole do stha before part

a whole do stha before part

設計模式 結構型 組合模式

將物件組合成樹形結構以表示 部分 整體 的層次結構。組合模式使得使用者對單個物件和組合物件的使用具有唯一性。對於樹形結構,當容器物件 如資料夾 的某乙個方法被呼叫時,將遍歷整個樹形結構,尋找也包含這個方法的成員物件 可以是容器物件,也可以是葉子物件 並呼叫執行,牽一而動百,其中使用了遞迴呼叫的機制來...

設計模式 10 結構型之組合模式

1 概念 composite模式也叫組合模式,是構造型的設計模式之一。通過遞迴手段來構造樹形的物件結構,並可以通過乙個物件來訪問整個物件樹。include using namespace std include string include list class ifile 檔案結點 class f...

java結構型設計模式 組合模式

1 模式理解 組合模式就是把兩個物件放在乙個物件裡嘍,確切的說是乙個物件包含別的物件的集合,好比你一老闆可以有很多個員工,夠清除了吧 2 運用場景 單對多或者多對單的時候可以使用組合模式 3 示例 先建立員工物件 public class staff public string getname pu...