Java设计模式-建造者模式

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

角色
抽象建造者(维护基本抽象建造方法)、具体建造者(实现具体建造方法)、产品 (维护基本属性)、指挥者 (调用每一个建造方法完成建造)

场景
1、产品拥有复杂的内部结构,通常包含多个成员变量。
2、生成产品对象的属性相互依赖 ,需要指定其生成顺序 。
3、对象的创建过程独立于创建该对象的类 。在建造者模式中通过引入指挥者类将创建过程封装在指挥者中 ,而不在建造者类和客户类中 。
4、隔离复杂对象的创建和使用 ,并使得相同的创建过程可以创建不同的产品 。

场景举例
多人在线网络游戏 ,不同角色的创建可以使用建造者模式 。

优点
1、通过相同的创建过程可以创建不同的产品对象 。
2、方便地替换具体建造者或增加新的具体建造者 。
3、控制产品的创建过程 ,职责分离 ,过程清晰 。

缺点
1、要求产品一般具有较多的共同点 。
2、产品的内部变化复杂 。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值