设计模式之建造者模式
来源:互联网 发布:淘宝cku总统妈妈犬舍 编辑:程序博客网 时间:2024/06/05 21:02
当得到简单的对象的时候,使用工厂模式即可.
当得到复杂的对象,而且对象的一些属性需要繁琐配置的时候,使用建造者模式比较好.
这里以建造汽车为例,汽车的组件可以自由搭配.
package builder;public class Car {private String engine;private String tire;private String door;private String seat;public void setEngine(String engine) {this.engine = engine;}public void setTire(String tire) {this.tire = tire;}public void setDoor(String door) {this.door = door;}public void setSeat(String seat) {this.seat = seat;}@Overridepublic String toString() {return "Car [engine=" + engine + ", tire=" + tire + ", door=" + door + ", seat=" + seat + "]";}public void show() {System.out.println(toString());}}
package builder;public class CarBuilder {private Car car = new Car();public CarBuilder addEngine(String engine) {car.setEngine(engine);return this;}public CarBuilder addTire(String tire) {car.setTire(tire);return this;}public CarBuilder addDoor(String door) {car.setDoor(door);return this;}public CarBuilder addSeat(String seat) {car.setSeat(seat);return this;}/** * 先设置好汽车的核心组件,然后再调用该方法 */public Car build() {return car;}}
package builder;import org.junit.Test;public class CarTest {@Testpublic void test() {Car car = new CarBuilder()//.addDoor("华丽的车门")//.addEngine("黄金的引擎")//.addSeat("舒适的座椅")//.addTire("耀眼的轮胎")//.build();car.show();}}
这样类似的builder在android用到的很多,在一些框架的配置对象中,也能看到建造者模式的影子.
0 0
- 设计模式之建造者
- 设计模式 之 建造者
- 设计模式之建造者
- 设计模式之建造者模式
- 设计模式之建造者模式
- 五 设计模式之建造者模式
- 设计模式之建造者模式
- C# 设计模式之 建造者模式
- 【设计模式】之 Builder 建造者模式
- 设计模式之建造者模式学习
- 设计模式之建造者模式
- 设计模式笔记之---建造者模式
- 设计模式之建造者模式
- 设计模式之建造者模式
- 设计模式之建造者模式
- java设计模式之建造者模式
- 设计模式之建造者模式
- java设计模式之建造者模式
- 安卓build编译各种系统镜像的过程。
- ButterKnife--View注入框架
- QT4.8.4+DirectFB1.4.3
- 20150913K-means聚类.md
- 根据命令行生成cxf客户端
- 设计模式之建造者模式
- jawin方式操作dll动态库
- activity中用到多个fragment,资源被回收后,出现未知异常
- libevent 编程 二:bufferevent
- tableView取消选中行的选中状态
- 国内常用ntp服务器
- Hibernate联合主键映射
- 调优
- nginx编译相关知识