構建模式

定義:將一個複雜對象的構建與它的表示分離,使得同樣的構建過程可以創建不同的表示.

原理:Builder模式是一步一步創建一個複雜的對象,它允許用戶可以只通過指定複雜對象的類型和內容就可以構建它們.用戶不知道內部的具體構建細節.Builder模式是非常類似抽象工廠模式,細微的區別大概只有在反覆使用中才能體會到.

實現:

創建接口,定義如何創建複雜對象的各個部件

public interface Builder{

//創建部件A

void buildPartA();

//創建部件B

void buildPartB();

//創建部件C

void buildPartC();

//組裝

Product getResult();

}

Director構建最後複雜的對象,上面接口分裝的是如何創建一個個部件

public class Director{

private Builder builder;

public Director(Builder builder){this.builder = builder;}

//下面是將部件組裝過程

public void construct(){

builder.buildPartA();

builder.buildPartB();

builder.buildPartC();

}

}

Builder的具體實現創建Builder

public class ConcreateBuilder implements Builder{

Part partA,partB,partC;

//這裏寫構建部件A代碼

public void buildPartA(){

}

//這裏寫構建部件B代碼

public void buildPartB(){

}

//這裏寫構建部件C代碼

public void buildPartC(){

}

//返回最後組裝成果

public Product getResult(){

}

}

產品接口

public interface Product{}

部件接口

public interface Part{}

部件模式使用:

ConcreateBuilder builder = new ConcreateBuilder();

Director director = new Director(builder);

director.construct();

Product product = builder.getResult();

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章