构建模式

定义:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示.

原理:Builder模式是一步一步创建一个复杂的对象,它允许用户可以只通过指定复杂对象的类型和内容就可以构建它们.用户不知道内部的具体构建细节.Builder模式是非常类似抽象工厂模式,细微的区别大概只有在反复使用中才能体会到.

实现:

创建接口,定义如何创建复杂对象的各个部件

public interface Builder{

//创建部件A

void buildPartA();

//创建部件B

void buildPartB();

//创建部件C

void buildPartC();

//组装

Product getResult();

}

Director构建最后复杂的对象,上面接口分装的是如何创建一个个部件

public class Director{

private Builder builder;

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

//下面是将部件组装过程

public void construct(){

builder.buildPartA();

builder.buildPartB();

builder.buildPartC();

}

}

Builder的具体实现创建Builder

public class ConcreateBuilder implements Builder{

Part partA,partB,partC;

//这里写构建部件A代码

public void buildPartA(){

}

//这里写构建部件B代码

public void buildPartB(){

}

//这里写构建部件C代码

public void buildPartC(){

}

//返回最后组装成果

public Product getResult(){

}

}

产品接口

public interface Product{}

部件接口

public interface Part{}

部件模式使用:

ConcreateBuilder builder = new ConcreateBuilder();

Director director = new Director(builder);

director.construct();

Product product = builder.getResult();

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值