建造者模式

2022-06-06 16:39:12 字數 1070 閱讀 1169

1、個人理解:首先我們要有一件產品,這個產品由多個部件組成;然後再有乙個抽象建造者,將建造這個產品的部件都寫成抽象方法,繼承它的子類會去重寫這些方法。最後我們要有乙個指揮者類,去封裝呼叫這些方法,也就是建造的過程。

2、定義:將乙個複雜物件的構建與它的表示分離,使得同樣的構建過程可以建立不同的表示。

3.**實現

1)product類,產品類,由多個部件構成。

1

class

product29

//列舉所有的產品部件

10public

void

show()

1115

}16 }

2)抽象的建造者

1

abstract

class

builder

2

3)具體的建造者

1

class

concretebuilder1 : builder28

9public

override

void

buildpartb()

1013

14public

override

product getresult()

1518}19

class

concretebuilder2 : builder

2026

27public

override

void

buildpartb()

2831

32public

override

product getresult()

3336 }

4)指揮者類,也就是用來指揮建造過程

1

class

director

29 }

5)客戶端**

1

static

void main(string

args)

2

建造者模式

1.定義 將乙個複雜物件的構建與它的表示分離,使得同樣的構建過程可以建立不同的表示。2.uml 類圖 結構 該結構 演示了複雜物件被一步一步建立的建造者模式。builder pattern structural example using system using system.collection...

建造者模式

軟體領域中的設計模式為開發人員提供了一種使用專家設計經驗的有效途徑。設計模式中運用了物件導向程式設計語言的重要特性 封裝 繼承 多型,真正領悟設計模式的精髓是可能乙個漫長的過程,需要大量實踐經驗的積累。最近看設計模式的書,對於每個模式,用c 寫了個小例子,加深一下理解。主要參考 大話設計模式 和 設...

建造者模式

建造者模式將複雜物件的構建和它的表示分離,使同樣的構建過程能夠構建出不同的表示。以乙個建造小人為例子,可以建造2種小人,胖子和瘦子 include using namespace std class builder 抽象建造者類 class buildthinman public builder 瘦...