zoukankan      html  css  js  c++  java
  • 建造者模式

    一、概述
    将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。
    二、适用性
    1.当创建复杂对象的算法应该独立于该对象的组成部分以及它们的装配方式时。
    2.当构造过程必须允许被构造的对象有不同的表示时。
    三、参与者
    1.Builder 为创建一个Product对象的各个部件指定抽象接口。
    2.ConcreteBuilder 实现Builder的接口以构造和装配该产品的各个部件。 定义并明确它所创建的表示。 提供一个检索产品的接口。
    3.Director 构造一个使用Builder接口的对象。
    4.Product 表示被构造的复杂对象。ConcreteBuilder创建该产品的内部表示并定义它的装配过程。 包含定义组成部件的类,包括将这些部件装配成最终产品的接口。
    四、类图

    五、示例
    Builder

    package com.lyz.design.builder;
    /**
    * Person对象的构造接口
    * @author liuyazhuang
    *
    */
    public interface PersonBuilder {

    void buildHead();

    void buildBody();

    void buildFoot();

    Person buildPerson();
    }
    ConcreteBuilder
    package com.lyz.design.builder;
    /**
    * Person对象的构造器
    * @author liuyazhuang
    *
    */
    publ

  • 相关阅读:
    线程之同步函数
    selenium破解极验验证
    数据结构--树
    数据结构--线性表
    数据结构--栈
    数据结构--队列
    代理的初步理解
    javamail+ical4j发送会议提醒
    阿里云学习之IOT物联网套件(客户端与服务端的后台数据传输)
    位图数据结构原理分析总结
  • 原文地址:https://www.cnblogs.com/ipetergo/p/6225456.html
Copyright © 2011-2022 走看看