建造者模式

 

建造者模式是对象的创建模式.建造模式可以将一个产品的内部表象与产品的生成过程分割开来,从而使一个建造过程生成具有不同的内部表象和产品对象。 

    建造模式有以下4个角色构成. 

1.抽象建造者Builder.java 

2.具体建造者ConcreteBuilder.java 

3.导演者Director.java 

4.产品Product.java 

 

    建造模式的使用意义 

1.建造模式的使用,使得产品的内部表象可以独立变化.客户端不必知道产品内部组成的细节. 

2.每一个builder都相对独立,而与其他的builder无关. 

3.模式所建造的最终产品更易于控制. 

 

 

package CreationalPattern.Builder;

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

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

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

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

 

 

 

 

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;
    }

}
 

 

 

 

 

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
    }
}
 

 

 

 

 

 

package CreationalPattern.Builder;

/**
 * 具体产品
 */
public class Product {
}
 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值