設計模式 6 建造者模式

2021-08-04 09:05:24 字數 1627 閱讀 4038

建造則模式:將乙個複雜的物件的構建與它的表示分離,是的同樣的構建過程可以建立不同的表示。

/* * 我要組裝一台電腦,電腦被抽象為computer類,它有三個部件:cpu 、主機板和記憶體。

* 並在裡面提供了三個方法分別用來設定cpu 、主機板和記憶體

* * 產品類:一般是乙個較為複雜的物件,也就是說建立物件的過程比較複雜,一般會有比較多的**量。

*/public class computer

public void setmmainboard(string mmainboard)

public void setmram(string mram)

}

package com.creativepattern.builderpattern.edition1;

/* * 抽象建造者:引入抽象建造者的目的,是為了將建造的具體過程交與它的子類來實現。這樣更容易擴充套件。

* 一般至少會有兩個抽象方法,乙個用來建造產品,乙個是用來返回產品。

* * 商家組裝電腦有一套組裝方法的模版,就是乙個抽象的builder類,裡面提供了安裝cpu、主機板和記憶體的方法,

* 以及組裝成電腦的create方法

*/public abstract class builder

package com.creativepattern.builderpattern.edition1;

/* * 建造者:實現抽象類的所有未實現的方法,具體來說一般是兩項任務:組建產品;返回組建好的產品。

* */

public class computerbuilder extends builder

@override

public void buildmainboard(string mainboard)

@override

public void buildram(string ram)

@override

public computer create()

}

package com.creativepattern.builderpattern.edition1;

/* * 指揮者類,用於統一組裝流程

* 商家的指揮者類用來規範組裝電腦的流程規範,先安裝主機板,再安裝cpu,最後安裝記憶體並組裝成電腦:

*/public class direcror

public computer createcomputer(string cpu,string mainboard,string ram)

}

package com.creativepattern.builderpattern.edition1;

public class creatcomputer

}

設計模式 6 建造者模式

建造者模式,是將乙個構建過程複雜的物件的構建過程和物件的表示分離,該模式主要關注的是構建過程。假設建造房子,無論是搭個茅草屋還是建造宮殿都需要打地基 建造牆壁,修建屋頂這幾個步驟,如下 產品類 public class house 抽象建造者 public abstract class houseb...

學習設計模式(6) 建造者模式

1.介紹 這個模式,非常有用。有時候,你的乙個類,有許多函式功能,你又不希望在這個類裡面再增加乙個管理函式呼叫的介面,但你又不希望用全域性變數來操作這批函式,怎麼辦?你還可以用建造者模式。2.具體使用說明 最經典的例子,莫過於 effective c 條款23,寧以non member,non fr...

設計模式C 實現(6) 建造者模式

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