1700459320
1700459321
代码清单11-6 奔驰车组装者
1700459322
1700459323
public class BenzBuilder extends CarBuilder{
1700459324
1700459325
private BenzModel benz=new BenzModel();
1700459326
1700459327
public CarModel getCarModel(){
1700459328
1700459329
return this.benz;
1700459330
1700459331
}
1700459332
1700459333
public void setSequence(ArrayList<String>sequence){
1700459334
1700459335
this.benz.setSequence(sequence);
1700459336
1700459337
}
1700459338
1700459339
}
1700459340
1700459341
非常简单实用的程序,给定一个汽车的运行顺序,然后就返回一个奔驰车,简单了很多。宝马车的组装与此相同,如代码清单11-7所示。
1700459342
1700459343
代码清单11-7 宝马车组装者
1700459344
1700459345
public class BMWBuilder extends CarBuilder{
1700459346
1700459347
private BMWModel bmw=new BMWModel();
1700459348
1700459349
public CarModel getCarModel(){
1700459350
1700459351
return this.bmw;
1700459352
1700459353
}
1700459354
1700459355
public void setSequence(ArrayList<String>sequence){
1700459356
1700459357
this.bmw.setSequence(sequence);
1700459358
1700459359
}
1700459360
1700459361
}
1700459362
1700459363
两个组装者都完成了,我们再来看看XX公司的需求如何满足,修改一下场景类,如代码清单11-8所示。
1700459364
1700459365
代码清单11-8 修改后的场景类
1700459366
1700459367
public class Client{
1700459368
1700459369
public static void main(String[]args){
[
上一页 ]
[ :1.70045932e+09 ]
[
下一页 ]