將乙個複雜物件的構建與它的表示分離,使得同樣的構建過程可以構建不同的表示。
build是為建立乙個project物件的各個部件指定的抽象介面。
concretebuild是具體建造者,實現build介面,構造和裝配各種配件。
director是構建乙個使用build介面的物件。(內部含build的呼叫)
建造者模式的好處就是建造**與表示**分離,由於建造者隱藏了產品是如何組裝的,所以若是需要改變乙個產品的內部展示,只需要再定義乙個建造者就行。
對於客戶端只暴露build和concretebuild就行,不需要知道具體怎麼建造
建造者模式可以提供乙個滿足外部所需功能的類。
**示例:
//具體產品
public class product
public void show()
}}
//抽象建造者
public abstract class builder public class concretebuilder1 extends builder
@override
public void buildpartb()
@override
public product getproduct()
}
public class concretebuilder2 extends builder@override
public void buildpartb()
@override
public product getproduct()
}
//指揮者
public class director
}
public class test
}
java設計模式之建造者模式
概念 建造者模式是指把乙個複雜物件的構建和表示分離,就像建房子一樣,每乙個房子的建造流程都是相同的,但是卻會有很多形狀不一,樣式不同的房子,這裡的房子實際上就是房子這個物件的表示,建造的流程就是房子物件的構建 建造者模式的構成部分 1.builder介面 builder介面設計要表示物件的構建流程,...
Java設計模式之建造者模式
builder模式也叫建造者模式或者生成器模式,是由gof提出的23種設計模式中的一種。builder模式是一種物件建立型模式之一,用來隱藏復合物件的建立過程,它把復合物件的建立過程加以抽象,通過子類繼承和過載的方式,動 態地建立具有復合屬性的物件。具體的構建物件 房子 public class h...
JAVA設計模式之建造者模式
分離物件子元件,子元件單獨構造 由builder來負責 和裝配模式 由director負責 從而可以構造出複雜物件。這個模式適用於某個物件構造特別複雜。由於實現了構建和裝配的解耦。不同的構建器,相同的裝配,也可以生產不同的物件的物件 相同的構建器和不同的裝配順序也可以構造不同的物件,這樣實現了構建演...