打字猴:1.700476949e+09
1700476949
1700476950 }
1700476951
1700476952 }
1700476953
1700476954 两个建造车间都已经完成,那现在的问题就变成了怎么让车间运作,谁来编写蓝图?谁来协调生产车间?谁来对外提供最终产品?于是导演类出场了,它不仅仅有每个车间需要的设计蓝图,还具有指导不同车间装配顺序的职责,如代码清单30-29所示。
1700476955
1700476956 代码清单30-29 导演类
1700476957
1700476958 public class Director{
1700476959
1700476960 //声明对建造者的引用
1700476961
1700476962 private CarBuilder benzBuilder=new BenzBuilder();
1700476963
1700476964 private CarBuilder bmwBuilder=new BMWBuilder();
1700476965
1700476966 //生产奔驰SUV
1700476967
1700476968 public ICar createBenzSuv(){
1700476969
1700476970 //制造出汽车
1700476971
1700476972 return createCar(benzBuilder,“benz的引擎”,“benz的轮胎”);
1700476973
1700476974 }
1700476975
1700476976 //生产出一辆宝马商务车
1700476977
1700476978 public ICar createBMWVan(){
1700476979
1700476980 return createCar(benzBuilder,“BMW的引擎”,“BMW的轮胎”);
1700476981
1700476982 }
1700476983
1700476984 //生产出一个混合车型
1700476985
1700476986 public ICar createComplexCar(){
1700476987
1700476988 return createCar(bmwBuilder,“BMW的引擎”,“benz的轮胎”);
1700476989
1700476990 }
1700476991
1700476992 //生产车辆
1700476993
1700476994 private ICar createCar(CarBuilder_carBuilder,String engine,String wheel){
1700476995
1700476996 //导演怀揣蓝图
1700476997
1700476998 Blueprint bp=new Blueprint();
[ 上一页 ]  [ :1.700476949e+09 ]  [ 下一页 ]