设计模式之5 多方法的工厂模式
2018-02-01 13:42
417 查看
多方法工厂模式
uml类图
相较于上一篇,稍作改动即可。
MultiMachineFactory.java
/** * @author heshiyuan * @description <p></p> * @path java-design-pattern/com.hsy.java.design.pattern.method * @date 2018/1/30 16:01 * @github http://github.com/shiyuan2he * @email shiyuan4work@sina.com * Copyright (c) 2018 shiyuan4work@sina.com All rights reserved. * @price ¥5 微信:hewei1109 */ public class MultiMachineFactory { /** * 造自行车 */ public static Machine createBike() { return new Bike(); } /** * 造小汽车 */ public static Machine createCar() { return new Car(); } /** * 造卡车 */ public static Machine createTruck() { return new Truck(); } }
测试类
public class MultiMethodClientTest { @Test public void createMachine(){ // 打包给客户的集装箱 List<Machine> list = new ArrayList<>() ; /** * 1.客户下订单,开始造车(2辆汽车,2两卡车,2两自行车) */ // 造汽车生产线 for(int i=0;i<2;i++){ list.add(MultiMachineFactory.createCar()); } // 造卡车生产线 for(int i=0;i<2;i++){ list.add(MultiMachineFactory.createTruck()); } // 造自行车生产线 for(int i=0;i<2;i++){ list.add(MultiMachineFactory.createBike()); } //客户开始测验每辆车的性能 list.forEach(ele -> { ele.start() ; ele.speed(); ele.stop(); if(ele instanceof Car){ ((Car) ele).blow(); } if(ele instanceof Truck){ ((Truck) ele).blow(); } }); } }
相关文章推荐
- 设计模式-工厂模式(简单工厂,工厂方法,抽象工厂)
- 我是架构师-设计模式-工厂模式-工厂方法
- 设计模式之--工厂模式详解(简单工厂、工厂方法、抽象工厂)
- 设计模式之三种工厂模式总结(简单工厂、工厂方法、抽象工厂)
- 软件爱 设计模式--工厂模式(简单工厂,工厂方法,抽象工厂)
- 设计模式-工厂模式(简单工厂模式和方法工厂模式)
- Java设计模式---工厂模式(简单工厂、工厂方法、抽象工厂)
- 设计模式--工厂模式(工厂方法、抽象工厂)
- 【23种设计模式】创建型模式 > 三个工厂模式(简单工厂、抽象工厂、工厂方法)
- 设计模式 - 工厂模式(简单,工厂方法,抽象工厂)
- 设计模式-工厂模式(简单工厂、工厂方法、抽象工厂)
- 设计模式——工厂模式(工厂方法)
- 设计模式解密(2)- 工厂模式(简单工厂、工厂方法、抽象工厂)
- Java设计模式-工厂模式(简单工厂+工厂方法)
- Java实践之路(设计模式)——工厂模式(工厂方法)
- 设计模式——三个工厂模式(简单工厂,工厂方法,抽象工厂)
- 设计模式学习003——工厂模式(工厂方法、抽象工厂),简单工厂【也叫静态工厂】
- 设计模式之模板方法模式
- 设计模式之模版方法模式——展现工作的一天
- 设计模式笔记之工厂方法模式