美文网首页java设计模式笔记
设计模式四--建造者模式

设计模式四--建造者模式

作者: 朽木亦自雕 | 来源:发表于2018-09-26 09:38 被阅读18次

定义

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

创建者模式中的角色

1:抽象创建者角色(Builder)
该角色用于规范产品的各个组成部分,并且进行抽象,一般独立于应用程序的逻辑

public abstract class Builder{
    //抽象方法,设置产品的各个部分
   public abstract void setPart1();
   public abstract void setPart2();
   public abstract void setPart3();
   //生产产品的方法
   public abstract Product builderProduct();
}

2:具体建造者(ConcreteBuilder)
该角色实现抽象建造者中定义的方法并且返回一个组建好的产品实例

public class ConcreteBuilder extends Builder{

  private Product product = new Product();
   @override
   public void setPart1(){
   }
   @override
   public void setPart2(){
   }
   @override
   public void setPart3(){
   }

   @override
   public Product builderProduct(){
      return product;
   }
}

3:产品角色(Product)
该角色是创建者模式中的一个复杂对象,有很多个不同的组成部分

public classProduct{
   //产品业务具体逻辑
}

4:导演者角色(Director)
该角色负责安排已有的顺序模块,并且告诉Builder开始构建

public class Director{
  private Builder builder = new ConcreteBuilder();
  public Product build(){
    //设置好组件
    build.setPart1();
    build.setPart2();
    build.setPart3();
    //返回具体产品
    return build.builderProduct();
  }
}

调用代码示例:

public class BuilderTest{
  public static void main(String [] args){
   //获取导演者
    Director director = new Director();
    //获取产品
    Product product = director.build();
  }
}

优点

1:封装性能对外封闭产品内部细节
2:建造者独立,易于扩展
3:便于控制细节风险,改变细节不影响其他模块

使用场景

1:相同方法不同执行顺序的时候
2:多个部件组装导致不同运行结果的时候
3:产品类比较复杂的时候
4:创建对象需要调用系统中别的复杂对象的时候

注:建造者模式关注零件类型和装配顺序
参考资料:设计模式之禅(二)

相关文章

  • Java 十一种设计模式深入理解

    目录一、工厂设计模式二、抽象工厂模式三、单例设计模式四、建造者(Builder)模式五、原型模式六、适配器设计模式...

  • Retrofit

    Retrofit设计模式 动态代理,装饰模式,建造者模式,抽象工厂模式,适配器模式 建造者模式创建Retrofit...

  • 设计模式(十四)中介者模式

    相关文章 设计模式(一)设计六大原则设计模式(二)单例模式的七种写法设计模式(三)建造者模式设计模式(四)简单工厂...

  • Android中涉及的模式

    我的Java设计模式-建造者模式 我的Java设计模式-观察者模式 重学设计模式之单例模式

  • 设计模式之建造者模式

    设计模式之建造者模式 Intro 简介 建造者模式: 建造者模式隐藏了复杂对象的创建过程,它把复杂对象的创建过程加...

  • 设计模式 - 目录

    设计模式01 - 单例模式 设计模式02 - 工厂模式 设计模式03 - 建造者模式 设计模式04 - 适配器模式...

  • 设计模式之建造者模式

    设计模式之建造者模式 1. 模式定义 建造者模式又可以成为生成器模式,它属于对象创建型模式。建造者模式将一个复杂对...

  • java设计模式--建造者模式

    java设计模式--建造者模式 建造者模式定义 建造者模式:是将复杂对象的构建与表示进行分离,使同样的构建过程会有...

  • 【Java设计模式】--建造者模式

    建造者模式(Bulider模式) 一、什么是建造者模式 建造者模式是设计模式的一种,将一个复杂对象的构建与它的表示...

  • 创建型设计模式

    1,创建型设计模式有四种:1,单例模式。2,工厂模式。3,建造者模式。4,原型模式。 2,四种设计模式的应用场景:...

网友评论

    本文标题:设计模式四--建造者模式

    本文链接:https://www.haomeiwen.com/subject/tafroftx.html