概念
將一個複雜對象地構建與它地表示分離,使得同樣的構建過程可以創建不同的表示。
代碼
產品對象
建造者模式的建造對象,通常相對較爲複雜,建造過程相對固定
抽象的建造者對象
抽象的建造者對象,負責確定產品的創建模塊,以及產品的返回。具體的建造者對象根據各自的要求個性化的實現這些抽象方法。
具體的建造者對象一
實現抽象的建造者對象中的抽象方法。
具體的建造者對象二
與上述對象功能相同,但是實現的方法略有不同。
指揮者類
負責指揮對象的建造過程,**針對抽象的建造者對象編寫,因爲不會對本方法進行重寫,所以一般建造過程都相對固定。**同時將產品的創建和使用過程分離。
特點
使用建造者模式將產品的創建和使用過程分離,實現新的建造者對象,便可以創建新的建造過程。但是由於新的建造者對象嚴格地繼承抽象的對象,所以新的建造者對象要與之前的對象類似。又因爲指揮者對象依據抽象的建造者對象指揮建造過程,所以建造過程是固定的。