//黄花梨继承车珠子接口, 并重写查看成品()方法
class 黄花梨手串 implements 车珠子 {
@Override
public void 查看成品() {
System.out.println("2000目精抛黄花梨手串");
}
}
//小叶紫檀继承车床接口,并重写车珠子()方法
class 小叶紫檀手串 implements 车珠子 {
@Override
public void 查看成品() {
System.out.println("1000目高抛小叶紫檀手串");
}
}
//一、普通工厂模式
//定义工厂 , 即为加工店铺 根据顾客提供的木材进行加工,返回不同的手串.
class 加工店铺 {
public 车珠子 加工(String 木材名){
if (木材名.equals("黄花梨")) {
return new 黄花梨手串();
}else if(木材名.equals("小叶紫檀")) {
return new 小叶紫檀手串();
}else {
System.out.println("本店暂不提供该种木材的加工!");
return null;
}
}
}
// 二、多个工厂模式
//由加工店铺直接做好手串,向顾客出售,顾客只需要根据需求去店铺购买就可以了
class 成品店铺 {
public 车珠子 黄花梨(){
return new 黄花梨手串();
}
public 车珠子 小叶紫檀(){
return new 小叶紫檀手串();
}
}
//三、静态工厂模式
//由网购店铺直接送货上门推销,顾客直接在网上订货,不需要再去访问实体店
class 网购店铺 {
public static 车珠子 黄花梨(){
return new 黄花梨手串();
}
public static 车珠子 小叶紫檀(){
return new 小叶紫檀手串();
}
}