`
85977328
  • 浏览: 1898903 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

建造模式

阅读更多
    建造者模式是对象的创建模式.建造模式可以将一个产品的内部表象与产品的生成过程分割开来,从而使一个建造过程生成具有不同的内部表象和产品对象。
    建造模式有以下4个角色构成.
1.抽象建造者Builder.java
2.具体建造者ConcreteBuilder.java
3.导演者Director.java
4.产品Product.java

    建造模式的使用意义
1.建造模式的使用,使得产品的内部表象可以独立变化.客户端不必知道产品内部组成的细节.
2.每一个builder都相对独立,而与其他的builder无关.
3.模式所建造的最终产品更易于控制.

    下面是一个简单的代码示例
Builder.java
package CreationalPattern.Builder;

/**
 * 抽象类或者接口
 */
public interface Builder {

    /**
     * 产品零件建造方法
     */
    public void buildPart1();

    /**
     * 产品零件建造方法
     */
    public void buildPart2();

    /**
     * 产品返还方法
     * @return Product
     */
    public Product retrieveResult();
}



ConcreteBuilder.java
package CreationalPattern.Builder;

/**
 * 具体建造者
 */
public class ConcreteBuilder implements Builder {

    Product product = new Product();

    public void buildPart1() {
        // 构件 product的零件1
    }

    public void buildPart2() {
        // 构件 product的零件2
    }

    public Product retrieveResult() {
        return product;
    }

}

Director.java
package CreationalPattern.Builder;

/**
 * 导演
 */
public class Director {
    private Builder builder;

    public void construct() {
        builder = new ConcreteBuilder();
        builder.buildPart1();
        builder.buildPart2();
        builder.retrieveResult();
        // contiure with ohter code
    }
}



Product.java
package CreationalPattern.Builder;

/**
 * 具体产品
 */
public class Product {
}
0
0
分享到:
评论

相关推荐

    建造模式(代码)

    建造模式是一种设计模式,它将复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。在软件工程中,这种模式常用于当一个类的实例化过程过于复杂,或者需要通过不同的步骤来构建时。建造模式允许...

    设计模式 - 建造模式(C++实例)

    建造模式(Builder Pattern)是一种创建型设计模式,它将复杂对象的构建与其表示分离,使得同样的构建过程可以创建不同的表示。这种模式常用于当构造过程需要步骤化,并且每个步骤可能有多种实现时,比如在软件工程...

    JAVA设计模式(建造模式)_视频

    Java设计模式中的建造模式,又称为构造者模式,是一种用于对象构建的创建型设计模式。在软件工程中,当我们需要创建复杂对象时,通常会遇到一个问题:这些对象的构造过程非常繁琐,涉及到多个步骤,而每个步骤都有...

    基于Java实现的23种设计模式Demo,抽象工厂模式、建造模式、工厂方法模式、原型模式、单例模式、外观模式、适配器模式等

    基于Java实现的23种设计模式Demo,抽象工厂模式、建造模式、工厂方法模式、原型模式、单例模式、外观模式、适配器模式等 Java设计模式共有23种,分别为:抽象工厂模式、建造模式、工厂方法模式、原型模式、单例模式...

    设计模式-------建造模式

    设计模式之---建造模式 1,建造模式属于对象的创建模式,是将一个产品的内部表象和产品的生产分割出来 2.使用原因:为了将构建复杂对象的过程和它的不见解耦; 3 使用情况:建造模式利用一个导演着对象和一个具体...

    [浪曦原创]JAVA设计模式 第9讲 建造模式(jzkangta)

    在提供的文件列表中,"建造模式.ppt"可能是详细的PPT讲解,包含了建造者模式的概念、示例代码和实际案例分析。"BuilderDemo"可能是演示建造者模式的Java代码示例,通过一个具体的例子来展示如何使用建造者模式创建和...

    基于pygame的坦克大战小游戏,实现了菜单选择、多种模式、多种关卡选择、地图建造模式课程设计

    【作品名称】:基于pygame的坦克大战小游戏,实现了菜单选择、多种模式、多种关卡选择、地图建造模式【课程设计】 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业...

    建造模式(PPT)

    建造者模式是一种设计模式,属于对象的创建模式。它的主要目的是将产品的构建过程与产品的表示分离,使得构建过程可以独立于不同的表示进行。这有助于在不改变产品内部构造的情况下,改变产品的构造方式。 在建造者...

    设计模式-建造者模式

    建造者模式(Builder Pattern)是一种创建型设计模式,它提供了一种方法来分步骤构建复杂的对象,使得构建过程和表示分离,使得同样的构建过程可以创建不同的表示。这种模式经常在对象的构造过程中需要进行多种选择...

    设计模式——建造者模式

    建造者模式是一种结构型设计模式,它允许我们分步骤创建复杂对象,而无需暴露构建过程的内部细节。这种模式在Java编程中非常常见,尤其是在处理需要多种构建方式或需要隔离对象构造过程的场景。 建造者模式的核心...

    Builder(建造模式)

    Builder模式是一种设计模式,它属于创建型模式,主要用于构建复杂对象。这种模式提供了一种方法来分离开对象的构造过程和表示方式,使得构造过程可以按照步骤进行,并且允许用户只指定他们关心的部分,而忽略其他不...

    设计模式之建造者模式代码示例

    建造者模式(Builder Pattern)是软件工程中一种用于创建对象的抽象工厂方法,它将复杂的构建过程分解为一系列步骤,使得构建过程可以独立于其表示进行。这种模式允许客户端使用相同的构建过程创建不同表现形式的...

    23种设计模式之:建造者,代理,观察,策略,状态模式

    本文将重点介绍标题中提到的五种设计模式:建造者模式、代理模式、观察者模式、策略模式以及状态模式。 **1. 建造者模式(Builder)** 建造者模式是一种创建型设计模式,它允许我们分步骤构建复杂对象,而无需暴露...

    建造者模式c++实现

    建造者模式是一种设计模式,它将复杂对象的构建与其表示分离,使得同样的构建过程可以创建不同的表示。在C++中实现建造者模式,我们可以遵循以下步骤: 首先,我们需要定义一个抽象建造者(Builder)类,它声明了一...

    设计模式之建造者模式

    建造者模式(Builder Pattern)是设计模式中的一种创建型模式,它允许我们分步骤构建复杂的对象,通过将构造过程与对象本身分离,使得同样的构造过程可以创建不同的表示。这种模式常用于当创建对象的步骤复杂或者...

    Java建造者模式源码

    Java建造者模式是一种设计模式,属于创建型模式,它的主要目的是通过隔离对象的构建过程和其表示,使得构造复杂对象的过程更加灵活。这种模式通常在需要创建对象的多个部分,并且这些部分可能需要以特定顺序组合时...

    建造者模式.pptx

    ### 建造者模式详解 #### 模式介绍 建造者模式(Builder Pattern)是设计模式中的一种,主要用于创建复杂对象。此模式的核心在于将一个复杂对象的构建与其表示相分离,使得同样的构建过程可以创建不同的表示。简单...

    建造者模式学习以及与工厂模式的区别

    建造者模式(Builder Pattern)是一种创建型设计模式,它提供了一种方法来分步骤构建复杂的对象,使得构建过程和表示分离。这种模式常用于当一个对象的构建过程复杂且需要多个步骤时,或者当我们希望同一个构建过程...

    C#设计模式之建造者模式

    建造者模式是软件设计模式中的一种,主要用于将复杂的对象构建过程与对象的使用分离,使得同样的构建过程可以创建不同的表示。在C#中,我们可以通过类的继承和接口的使用来实现这一模式。以下是关于“C#设计模式之...

Global site tag (gtag.js) - Google Analytics