您的位置:首页 > 编程语言 > Java开发

一起学Java设计模式--工厂方法模式(不在23种设计模式之内)

2014-04-03 18:30 351 查看
(2) 工厂方法模式

海尔工厂(Haier)生产海尔空调(HaierAirCondition),美的工厂(Midea)生产美的空调(MideaAirCondition) 。使用工厂方法模式描述该场景,绘制类图并编程实现。



public interface AirCondition{

void work();

}
public interface AirConditionFactory{

AirCondition produceAirCondition();

}
public class HaierAirCondition implements AirCondition{
public void work(){

System.out.println("HaierAirCondition is working! -_-!!!");

}
}

public class MideaAirCondition implements AirCondition{
public void work(){

System.out.println("MideaAirCondition is working -_-~~~");

}
}
public class HaierAirConditionFactory implements AirConditionFactory{
public HaierAirCondition produceAirCondition(){

System.out.println("HaierAirCondition produced! *^_^*");

return new HaierAirCondition();
}
}

public class MideaAirConditionFactory implements AirConditionFactory{
public MideaAirCondition produceAirCondition(){

System.out.println("MideaAirCondition produced! *^_^*");

return new MideaAirCondition();
}
}
public class AirConditionClient{
public static void main(String[] args){
AirCondition haierCondition, mideaCondition;

AirConditionFactory haierConditionFactory = new HaierAirConditionFactory();
AirConditionFactory mideaConditionFactory = new MideaAirConditionFactory();

haierCondition = haierConditionFactory.produceAirCondition();
mideaCondition = mideaConditionFactory.produceAirCondition();

haierCondition.work();
System.out.println();
mideaCondition.work();

}
}


运行结果:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  设计模式