java建造者模式,java 构造者模式

  java建造者模式,java 构造者模式

  

  建造者模式

  模式的定义与特点

  构建器模式的定义:指将一个复杂对象的构造与它的表示分离,使同样的构建过程可以创建不同的表示,这样的设计模式被称为建造者模式。它是将一个复杂的对象分解为多个简单的对象,然后一步一步构建而成。它将变与不变相分离,即产品的组成部分是不变的,但每一部分是可以灵活选择的。

  该模式的主要优点如下:

  具体的构建者相互独立,有利于系统的扩展。客户不必知道产品内部构成的细节,很容易控制细节风险。

  其缺点如下:

  产品的成分必须相同,这就限制了它的使用范围。如果产品内部变化复杂,这个模型会增加很多构建者。

  构建器模式和工厂模式的侧重点不同:构建器模式关注零件的装配过程,工厂方法模式更关注零件的创建过程,但两者可以结合使用。

  (推荐视频:java视频教程)

  模式的结构与实现

  建造者模式由四个要素组成:产品、抽象建造者、具体建造者和指挥者。现在我们来分析一下它的基本结构和实现方法。

  1. 模式的结构

  构建器模型的主要作用如下。

  产品:它是一个包含多个组件的复杂对象,其组件由特定的构建者创建。抽象构建器(Abstract Builder):它是一个接口,包含创建产品的各种子组件的抽象方法,通常还包含一个返回复杂产品的方法getResult()。具体构建器:实现构建器界面,完成复杂产品组件的具体创建方法。Director:调用builder对象中的组件构造和组装方法来完成复杂对象的创建,不涉及director中具体产品的信息。

  其结构图如下:

  如何解决写爬虫IP受阻的问题?立即使用。

  2. 模式的实现

  (1)产品角色:具有多个组件的复杂对象。

  公共类产品{

  私弦partA

  私有字符串partB

  私有字符串partC

  public void set partA(String partA){

  this.partA=partA

  }

  public void set partB(String partB){

  this.partB=partB

  }

  public void setPartC(String partC){

  this.partC=partC

  }

  公共void show() {

  //展示产品的特点

  }

  }(2)抽象构建器:包含用于创建产品的各种子组件的抽象方法。

  公共抽象类生成器{

  //创建产品对象

  受保护产品product=新产品();

  公共抽象void build parta();

  公共抽象void build partb();

  公共抽象void build partc();

  //返回产品对象

  公共产品getResult() {

  退回产品;

  }

  }(3)具体构建器:实现抽象构建器接口。

  公共类ConcreteBuilder扩展生成器{

  public void buildPartA() {

  product . set PartA( build PartA );

  }

  public void buildPartB() {

  product . set parta( build PartB );

  }

  public void buildPartC() {

  Product.setPartA (build PartC )。

  }

  }(4) Commander:调用构建器中的方法,完成复杂对象的创建。

  公共类主管{

  私人建筑商;

  公共董事(建筑商)

  this.builder=builder

  }

  //产品构造和装配方法

  公共产品构造(){

  builder . build parta();

  builder . build partb();

  builder . build partc();

  返回builder . get result();

  }

  }(5)客户

  公共类客户端{

  公共静态void main(String[] args) {

  builder builder=new concrete builder();

  导演导演=新导演(施工员);

  product product=director . construct();

  product.show()。

  }

  }模式的应用场景

  构建器模型创建复杂的对象,其产品的各个部分经常面临剧烈的变化,但组合它们的算法相对稳定,因此通常用于以下情况。

  创建的对象很复杂,由几个组件组成。每个组件都面临着复杂的变化,但组件之间的构建顺序是稳定的。创建复杂对象的算法独立于对象的组件及其装配方法,即产品构造的过程和最终的表示是独立的。

  本文来自我们,java教程专栏,欢迎学习!这就是java builder模式的特点及其应用场景的细节。更多请关注我们的其他相关文章!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: