设计模式之建造者模式

来源:互联网 发布:淘宝搜索指数查询 编辑:程序博客网 时间:2024/06/07 03:43

1 定义

建造者模式,将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。建造者模式又叫生成器模式,使用建造者模式,用户只需关心需要建造对象的类型,而具体建造的过程和细节无需知晓。

UML类图为:



建造者模式的4个角色:

  • 产品类:具体产品,有多个模块(部件)构成
  • 抽象的建造者:提供构建一个产品所需的抽象模块(部件),规范产品的组建。
  • 具体的建造者:实现抽象的建造者,并且返回一个组建好的对象。
  • 指挥者:负责安排已有的模块顺序,告诉Builder开始建造。



2 建造者模式的通用代码


  • Product类

// 产品类class Product{// 产品由多个部分组成}

  • 抽象建造者类

// 抽象建造者abstract class Builder{public abstract void partA();public abstract void partB();public abstract Product builderProduct();}

  • 具体建造者类

// 具体建造者class ConcreteBuilder extends Builder{Product product = new Product();@Overridepublic void partA() {// 建造产品的A部件}@Overridepublic void partB() {// 建造产品的B部件}@Overridepublic Product builderProduct() {return this.product;}}

  • 指挥者类

// 指挥者类class Director{public Product builder(Builder builder){builder.partA();builder.partB();return builder.builderProduct();}}






原创粉丝点击