1700476208
public void specialTalent(){
1700476209
1700476210
System.out.println(“小超人的能力是刀枪不入、快速运动”);
1700476211
1700476212
}
1700476213
1700476214
}
1700476215
1700476216
产品都具备,那我们编写一个工厂类,其意图就是生产超人,具体是成年超人还是未成年超人,则由客户端决定,如代码清单30-4所示。
1700476217
1700476218
代码清单30-4 超人制造工厂
1700476219
1700476220
public class SuperManFactory{
1700476221
1700476222
//定义一个生产超人的工厂
1700476223
1700476224
public static ISuperMan createSuperMan(String type){
1700476225
1700476226
//根据输入参数产生不同的超人
1700476227
1700476228
if(type.equalsIgnoreCase(“adult”)){
1700476229
1700476230
//生产成人超人
1700476231
1700476232
return new AdultSuperMan();
1700476233
1700476234
}else if(type.equalsIgnoreCase(“child”)){
1700476235
1700476236
//生产未成年超人
1700476237
1700476238
return new ChildSuperMan();
1700476239
1700476240
}else{
1700476241
1700476242
return null;
1700476243
1700476244
}
1700476245
1700476246
}
1700476247
1700476248
}
1700476249
1700476250
产品有了,工厂类也有了,剩下的工作就是开始生产超人。这也非常简单,如代码清单30-5所示。
1700476251
1700476252
代码清单30-5 场景类
1700476253
1700476254
public class Client{
1700476255
1700476256
//模拟生产超人
1700476257
[
上一页 ]
[ :1.700476208e+09 ]
[
下一页 ]