一、什么是建造模式:

  建造模式可以将一个产品的内部表象与产品的生成过程分割开来,从而使一个建造过程生成具有不同内部表象的产品。客户端不需要知道产品内部的结构和生产过程。

二、建造模式的结构:

Java建造(Builder)模式

  Builder(抽象建造者角色):一个抽象的建造者父类结构,规定产品对象各个组成成分的建造。

  ConcreteBuilder(产品的具体建造者):继承抽象建造者角色,实现建造方法buildPart1()、builderPart2(),完成产品零件实例的创建;返回产品实例的方法retrieveResultProuduct(),一般而言零件数和产品的建造方法数相同。

  Prouduct(产品):具体建造者建造的对象。

  Director(导演者角色):调用具体产品的创建者 ,获取产品对象。

  总之,导演者角色与客户端直接打交道,导演者角色将客户端创建产品的请求划分为对各个零件的建造请求,再将这些请求委托给具体的建造者角色,具体建造者角色生产具体的零件,不被客户端所知。

 1 /**
 2  * 建造者模式产品对象
 3  *
 4  * @author ZhouDX
 5  * @since 2019/3/6 22:02:58
 6  */
 7 public class Product {
 8     /**
 9      * 产品Id
10      */
11     private  String prouductId;
12     /**
13      * 产品价格
14      */
15     private  String price;
16 
17     public String getProuductId() {
18         return prouductId;
19     }
20 
21     public void setProuductId(String prouductId) {
22         this.prouductId = prouductId;
23     }
24 
25     public String getPrice() {
26         return price;
27     }
28 
29     public void setPrice(String price) {
30         this.price = price;
31     }
32 
33     @Override
34     public String toString() {
35         return "Product{" + "prouductId='" + prouductId + '\'' + ", price='" + price + '\'' + '}';
36     }
37 }
Prouduct(产品)

相关文章: