1700476674
}
1700476675
1700476676
}
1700476677
1700476678
很简单,你要我生产宝马商务车,没问题,直接产生一个宝马商务车对象,返回给调用者,这对调用者来说根本不需要关心到底是怎么生产的,它只要找到一个宝马工厂,即可生产出自己需要的产品(汽车)。奔驰车工厂与此类似,如代码清单30-21所示。
1700476679
1700476680
代码清单30-21 奔驰车工厂
1700476681
1700476682
public class BenzFactory implements CarFactory{
1700476683
1700476684
//生产SUV
1700476685
1700476686
public ICar createSuv(){
1700476687
1700476688
return new BenzSuv();
1700476689
1700476690
}
1700476691
1700476692
//生产商务车
1700476693
1700476694
public ICar createVan(){
1700476695
1700476696
return new BenzVan();
1700476697
1700476698
}
1700476699
1700476700
}
1700476701
1700476702
产品和工厂都具备了,剩下的工作就是建立一个场景类模拟调用者调用,如代码清单30-22所示。
1700476703
1700476704
代码清单30-22 场景类
1700476705
1700476706
public class Client{
1700476707
1700476708
public static void main(String[]args){
1700476709
1700476710
//要求生产一辆奔驰SUV
1700476711
1700476712
System.out.println(”===要求生产一辆奔驰SUV===”);
1700476713
1700476714
//首先找到生产奔驰车的工厂
1700476715
1700476716
System.out.println(“A、找到奔驰车工厂”);
1700476717
1700476718
CarFactory carFactory=new BenzFactory();
1700476719
1700476720
//开始生产奔驰SUV
1700476721
1700476722
System.out.println(“B、开始生产奔驰SUV”);
1700476723
[
上一页 ]
[ :1.700476674e+09 ]
[
下一页 ]