composite pattern)、外觀模式(
façade pattern)、享元模式(
flyweight pattern)、**模式(
proxy pattern)。
組合模式(composite pattern),將物件以樹形結構組織起來,以達成"部分-整體"的層次結構,使得客戶端對單個物件和組合物件的使用具有一致性。
1. 定義了包含簡單物件和組合物件的類層次結構。簡單物件可以被組合到複雜物件中,而組合的物件可以再被組合。這樣客戶端**中用到簡單物件的地方都可以使用組合物件。
2. 簡化客戶端**。客戶端不用知道某物件是簡單物件還是組合物件,可以以一致的方式使用這些物件。
3. 更容易增加新型別的元件。新的元件可以方便地加入已有組合物件中不用改變客戶端**。下面是具體例項:
namespace compositepattern.designpattern
abstract public void add(component c); //宣告抽象公有add方法
public abstract void dumpcontents(); //宣告抽象公有dumpcontents方法
}
class composite : component //組合類composite繼承自component類
override public void add(component c) //覆寫基類add方法
public override void dumpcontents() //覆寫基類dumpcontents方法
", strname);
foreach (component c in componentlist)
}}
閱讀全文
C 設計模式之我見 三
介面卡模式 adapter pattern 橋接模式 bridge pattern 裝飾模式 decorator pattern 組合模式 composite pattern 外觀模式 fa ade pattern 享元模式 flyweight pattern 模式 proxy pattern 下面...
C 設計模式之我見 四
今天咱們接著上一節的行為型模式觀察者模式 oberver pattern 中介者模式 mediator pattern 備忘錄模式 memento pattern 給大家繼續講。在前這幾節中,因為時間緊促,可能有些詮釋的不到位,可能多少有點瑕疵,因為不同人的理解是不同的概念。當然希望廣大讀者多提建議...
C 設計模式之我見 四
模版方法模式 template method 命令模式 command pattern 迭代器模式 iterator pattern 觀察者模式 oberver pattern 中介者模式 mediator pattern 備忘錄模式 memento pattern 直譯器模式 interprete...