设计模式(七)----建造者模式

本文详细介绍了建造者模式的作用,通过一个文档编写的Builder示例,包括Builder抽象类、Director类、TextBuilder和HTMLBuilder的具体实现,并阐述了Builder模式中的四个关键角色:Builder、ConcreteBuilder、Director和Client。
摘要由CSDN通过智能技术生成

目录

1.Builder模式

1.1 作用

1.2 示例程序

1.2.1 示例程序类图

1.2.2 Builder抽象类

1.2.3 Director类

1.2.4 TextBuilder类

1.2.5 HTMLBuilder类

1.2.6 Main类

1.3 Builder模式中的角色


1.Builder模式

1.1 作用

   在建造一种具有复杂结构的物体时,很难一气呵成直接完成,此时需要首先建造这个物体的各个部分,即组件,然后分阶段将它们组装起来,Builder模式就是用于组装具有复杂结构的实例

1.2 示例程序

   完成一种文档编写的builder。

1.2.1 示例程序类图

1.2.2 Builder抽象类

//定义了必须的各个组件的抽象类
public abstract class Builder {
    public abstract void makeTitle(String title);//编写标题
    public abstract void makeString(String str);//编写字符串
    public abstract void makeItems(String[] items);//编写条目
    public abstract void close();//完成文档编写的方法
}

1.2.3 Director类

//关联Builder的类,使用Builder类的方法来组成自己需要的文档
public class Director {
    private Builder builder;

    public Director(Builder builder) {
        this.builder = builder;
    }

    public void construct() {//定义了调用Builder组件的逻辑
        builder.makeTitle("Greeting");
        builder.makeString("从早上至下午");
        builder.makeItems(new String[]{"早上好。", "下午好。"});
        builder.makeString("晚上");
        builder.makeItems(new String[]{"晚上好。", "晚安。", "再见。&
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值