一、 組合模式:將物件組合成樹形結構以表示「部分-整體」的層次結構。組合模式使得使用者對單個物件和組合物件的使用具有一致性。
二、**示例
@datapublic
abstract
class
company
public
abstract
void
add(company c);
public
abstract
void
remove(company c);
public
abstract
void display(int
depth);
public
abstract
void
lineofduty();
}public
class concretecompany extends
company
@override
public
void
add(company c)
@override
public
void
remove(company c)
@override
public
void display(int
depth)
system.out.println(ch.tostring() +name);
children.foreach(c ->);
}@override
public
void
lineofduty()
}public
class financedepartment extends
company
@override
public
void
add(company c)
@override
public
void
remove(company c)
@override
public
void display(int
depth)
system.out.println(ch.tostring() +name);
}@override
public
void
lineofduty()
}public
class hrdepartment extends
company
@override
public
void
add(company c)
@override
public
void
remove(company c)
@override
public
void display(int
depth)
system.out.println(ch.tostring() +name);
}@override
public
void
lineofduty()
}public
class
test
}
三、使用場景
需求中是體現部分與整體層次的結構時,希望使用者可以忽略組合物件與單個物件的不同,統一地使用組合結構中的所有物件時,就應該考慮使用組合模式。
大話設計模式 組合模式
abstract class component public abstract function add component c public abstract function remove component c public abstract function display depth 葉...
大話設計模式 組合模式
前言 在 軟體開發過程中,我們經常會遇到處理簡單物件和復合物件的情況,例如對作業系統中目錄的處理就是這樣的乙個例子,因為目錄可以包括單獨的檔案,也可以包括 資料夾,資料夾又是由檔案組成的,由於簡單物件和復合物件在功能上區別,導致在操作過程中必須區分簡單物件和復合物件,這樣就會導致客戶呼叫帶來不必要的...
大話設計模式之組合模式
將物件組合成樹形結構以表示 部分 整體 的層次結構。組合模式使得使用者對單個物件好人組合物件的使用具有一致性。component為組合中的物件宣告介面,在適當情況下,實現所有類共有介面的預設行為。宣告乙個藉口用於訪問和管理component的子部件 abstractclass component 使...