美文网首页
设计模式---构建者(Builder)

设计模式---构建者(Builder)

作者: RalapHao | 来源:发表于2017-09-27 17:41 被阅读0次

介绍

该模式为了将构建复杂对象的过程和他的部件解耦,使得构建构成和部件的表示隔离开。

UML

UML.png

上代码

package com.ralap.builder;

/**
 * Created by ralap on 2017/9/27.
 */
public class Computers {
    private final String mCpu;
    private final String mDisplay;
    private final String mOs;

    private Computers(Builder builder) {
        this.mCpu = builder.cpu;
        this.mDisplay = builder.display;
        this.mOs = builder.os;
    }

    public static class Builder {
        private final String cpu;
        private String display;
        private String os;

        public Builder(String cpu) {
            this.cpu = cpu;
        }

        public Builder display(String display) {
            this.display = display;
            return this;
        }

        public Builder os(String os) {
            this.os = os;
            return this;
        }

        public Computers create() {
            return new Computers(this);
        }

    }

    public String getmCpu() {
        return mCpu;
    }

    public String getmDisplay() {
        return mDisplay;
    }

    public String getmOs() {
        return mOs;
    }
}

说明

  1. Computers构造私有;
  2. 不可变参数使用final,防止后续修改;
  3. Bullder的设置参数使用链式

优缺点:

  1. 优点:
    • 良好的封装性,使用构建者模式可以是客户端不必知道看平内部的组成细节;
    • 构建者独立,容易扩展;
  2. 缺点
  • 会产生多余的Builder对象,消耗内存;

相关文章

  • Mybatis中的设计模式

    Mybatis 设计模式 mybaits最少用到了九种设计模式: 设计模式mybaits体现Builder构建者模...

  • 安卓设计模式-构建者模式

    安卓设计模式-构建者模式 是什么 构建者模式又生builder模式,是将复杂的对象的构建与他的表示分离,使得同样的...

  • 设计模式--Builder

    标签(空格分隔): android 设计模式 builder 1 Builder设计模式概述 将复杂对象的构建与它...

  • Builder模式

    一、作用 工匠若水-设计模式(创建型)之建造者模式(Builder Pattern) 用于构建复杂的对象,将构建的...

  • 构建者(Builder)设计模式

    一、定义:构建者模式,又称建造者模式。 将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。...

  • 设计模式---构建者(Builder)

    介绍 该模式为了将构建复杂对象的过程和他的部件解耦,使得构建构成和部件的表示隔离开。 UML 上代码 说明 Com...

  • 构建者设计模式-Builder

    1.定义 又称生成器设计模式,它是将一个复杂对象的构建(属于稳定部分或抽象)与它的表示(属于变化部分或具体实现)分...

  • 【设计模式】- Builder(构建者)模式

    简介 当我们在构建一个复杂的对象时,想要把对象的构建和表现分离开来,那么就可以使用Builder模式。比如:构建一...

  • Android Builder模式笔记

    Builder模式介绍 Builder模式又称建造者模式,表示将构建过程和表示过程进行分离,让(参数)构建过程变得...

  • 设计模式(四):建造者模式

    建造者模式(Builder Pattern) 建造者模式(Builder Pattern)将一个复杂的构建与其表示...

网友评论

      本文标题:设计模式---构建者(Builder)

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