1、場景
— 我們要建造乙個複雜的產品。比如火箭,這個複雜的產品的建立有這個乙個問題:裝配這些子元件是不是有個步驟的問題。
— 在實際開發中,我們所需要的物件構建時,也非常複雜,有很多步驟需要處理。
2、建造模式的本質
3、例項
飛船部件:
class orbitalmodule
public string getname()
public void setname(string name)
}class engine
public string getname()
public void setname(string name)
}class escapetower
public string getname()
public void setname(string name)
}public class airship
public void setorbitalmodule(orbitalmodule orbitalmodule)
public engine getengine()
public void setengine(engine engine)
public escapetower getescapetower()
public void setescapetower(escapetower escapetower)
}
構造和裝配介面
public inte***ce airshipbuilder
public inte***ce airshipdirector
構造和裝配的實現
public class chinaairshipbuilder implements airshipbuilder
@override
public orbitalmodule buildorbitalmodule()
@override
public escapetower buildescapetower()
}
public class chinaairshipdirector implements airshipdirector
@override
public airship directairship()
}
使用
4、開發中的應用場景sql中的preparedstatement
jdom中的 dombuilder、saxbuilder
Java設計模式(五) 建造者模式Builder
我們要建造乙個複雜的產品。比如 神舟飛船 iphone。這個複雜的產品的建立,有這樣乙個問題需要處理 要構建的物件,宇宙飛船 package com.iter.devbox.builder 宇宙飛船 author shearer public class airship public orbital...
設計模式 建造者模式
在gof的23種設計模式中對builder pattern的定義是 將乙個複雜物件的構建與它的表示分離,使得同樣的構建過程可以建立不同的表示。從程式角度來說,就是在基類定義某種事物建立的過程或業務流程,在子類進行重寫或是使用基類方法。這樣建立出來的例項不會因為過程或流程的丟失而使業務失敗。舉例來說,...
設計模式建造者模式
今天看了乙個設計模式。總結下,以免忘了。如何引入建造者模式的呢?作者舉了個例子。建造小人。當然需要 頭,左手,右手,左腳,右腳,軀幹。建造的過程使用 使用類裡面的方法就行了。但是如果需要乙個胖的小人,乙個瘦的小人呢?就需要重新構造乙個胖人類,乙個瘦人類。當然 使用者還需要自己處理構造的過程。這樣 就...