Director.java
上传用户:hensond
上传日期:2021-12-27
资源大小:817k
文件大小:1k
源码类别:

软件工程

开发平台:

Java

  1. package com.company.builder;
  2. /**
  3.  * @author cbf4Life cbf4life@126.com
  4.  * I'm glad to share my knowledge with you all.
  5.  */
  6. public class Director {
  7. //声明对建造者的引用
  8. private CarBuilder benzBuilder = new BenzBuilder();
  9. private CarBuilder bmwBuilder = new BMWBuilder();
  10. //生产奔驰SUV车型
  11. public ICar createBenzSuv(){
  12. //制造出汽车
  13. return createCar(benzBuilder, "benz的引擎", "benz的轮胎");
  14. }
  15. //生产出一辆宝马的商务车
  16. public ICar createBMWVan(){
  17. return createCar(benzBuilder, "BMW的引擎", "BMW的轮胎");
  18. }
  19. //生产出一个混合车型
  20. public ICar createComplexCar(){
  21. return createCar(bmwBuilder, "BMW的引擎", "benz的轮胎");
  22. }
  23. //生产车辆
  24. private ICar createCar(CarBuilder _carBuilder,String engine,String wheel){
  25. //导演怀揣蓝图
  26. Blueprint bp = new Blueprint();
  27. bp.setEngine(engine);
  28. bp.setWheel(wheel);
  29. System.out.println("获得生产蓝图");
  30. _carBuilder.receiveBlueprint(bp);
  31. return _carBuilder.buildCar();
  32. }
  33. }