組合模式介紹

2021-10-21 13:33:32 字數 1728 閱讀 5766

組合模式(composite pattern),又叫部分整體模式,屬於結構型模式,它建立了物件組的樹形結構,將物件組合成樹狀結構以表示「整體-部分」的層次關係。

組合模式使得使用者對單個物件和組合物件的訪問具有一致性,即:組合能讓客戶以一致的方式處理個別物件以及組合物件。

(1)建立抽象類

public

abstract

class

organization

public

void

setname

(string name)

public

organization

(string name)

//預設實現

public

void

add(organization organization)

public

void

remove

(organization organization)

public

abstract

void

print()

;}

(2)建立抽象類子類

public

class

university

extends

organization

@override

public

void

add(organization organization)

@override

public

void

remove

(organization organization)

@override

public string getname()

@override

public

void

print()

}}

public

class

college

extends

organization

@override

public

void

add(organization organization)

@override

public

void

remove

(organization organization)

@override

public string getname()

@override

public

void

print()

}}

public

class

department

extends

organization

@override

public string getname()

@override

public

void

print()

}

(3)測試

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

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

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

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

組合模式 設計模式系列之組合模式解析

今天為大家帶來死磕設計模式系列的第11個模式,屬於結構型模式的 組合模式。什麼是組合模式?組合模式解決了什麼問題?適用場景是什麼?將物件組合成樹形結構以表示 部分 整體 的層次結構。composite 使得使用者對單個物件和組合物件的使用具有一致性。如果業務中需要定義複雜的資料結構,可以用樹形巢狀來...