设计模式之建造者模式理解

基本介绍

1.1 什么是建造者模式?

将复杂对象的构建和它的表示分离,使同样的构建过程产生不同的表示

  • 建造者模式(Builder Pattern) 又叫生成器模式,是一种对象构建模式。可以将复杂对象的构建和它的表示分离,使同样的构建过程产生不同的表示
  • 建造者模式隐藏了复杂对象的创建过程,它把复杂对象的创建过程加以抽象,通过子类继承或者重载的方式,动态的创建具有复合属性的对象。

1.2 主要作用

在用户不知道对象的建造过程和细节的情况下就可以直接创建复杂的对象。

  • 用户只需要给出指定复杂对象的类型和内容;
  • 建造者模式负责按顺序创建复杂对象(把内部的建造过程和细节隐藏起来)

1.3 解决的问题

  1. 方便用户创建复杂的对象(不需要知道实现过程)
  2. 代码复用性 & 封装性(将对象构建过程和细节进行封装 & 复用)

1.4 四个角色

  1. Product(产品角色): 一个具体的产品对象。

  2. Builder(抽象建造者): 创建一个 Product 对象的各个部件指定的 接口/抽象类。

  3. ConcreteBuilder(具体建造者): 实现接口,构建和装配各个部件。

  4. Director(指挥者): 构建一个使用 Builder 接口的对象。它主要是用于创建一个复杂的对象。它主要有两个作用,一是:隔离了客户与对象的生产过程,二是:负责控制产品对象的生产过程。

原理类图

在这里插入图片描述

以建造者模式创建共享单车为例

Product(产品)类
public class Bike {
   
    private Frame frame; //单车框架
    private Seat seat;	//单车车座

    public Frame getFrame() {
   
        return frame;
    }

    public void setFrame(Frame frame) {
   
        this.frame = frame;
    }

    public Seat getSeat() {
   
        return seat;
    }

    public void setSeat(Seat seat) {
   
        this.seat = seat;
    }
}
Builder(抽象建造者)类
//抽象builder类
abstract public 
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值