[关闭]
@songying 2018-07-09T10:30:35.000000Z 字数 717 阅读 1101

建造者模式(生成器)

设计模式


定义

将一个复杂对象的构建和它的表示分离, 使得同样的构建过程可以创建不同的表示。

四个角色

代码角度

  1. public class Product{
  2. public void doSomething(){
  3. //独立业务处理
  4. }
  5. }
  1. public abstract class Builder{
  2. // 设置产品的不同部分,以获得不同的产品
  3. public abstract void setPart();
  4. // 建造产品
  5. public abstract Product buildProduct();
  6. }
  1. public class ConcreteProduct extends Builder{
  2. private Product product = new Product();
  3. // 设置产品零件
  4. public void setPart(){
  5. // 产品类内的逻辑处理
  6. }
  7. //组建一个产品
  8. public Product buildProduct(){
  9. return product;
  10. }
  11. }
  1. public class Director{
  2. private Builder builder = new ConcreteProduct();
  3. //构建不同的产品
  4. public Product getAProduct(){
  5. builder.setPart();
  6. return builder.buildProduct();
  7. }
  8. }
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注