关于一个工厂的故事
话说有一个生产电视机的工厂,可以生产海信电视机、海尔电视机。程序设计如下:
/**
* 电视机工厂
* @author zherop
*/
public class TVFactory {
/**
* 生产海尔电视机
*
* @return
*/
public HaierTV createHaierTV() {
return new HaierTV();
}
/**
* 生产海信电视机
*
* @return
*/
public HisenseTV createHisenseTV() {
return new HisenseTV();
}
}
/**
* 海尔电视机
* @author zherop
*/
public class HaierTV {
public void play() {
System.out.println("海尔电视机播放...");
}
}
/**
* 海信电视机
* @author zherop
*/
public class HisenseTV {
public void play() {
System.out.println("海信电视机播放...");
}
}
一切都是那么美好,随着工厂业务的发展,现在又需要生产华为电视机。这个时候,厂长找到工程师小曾,让他给出个设计方案。
于是小曾稍作思考,并想到如下方案:
新增 HuaweiTV,然后修改 TVFactory
/**
* 华为电视机
* @author zherop
*/
public class HuaweiTV {
public void play() {
System.out.println("华为电视机播放...");
}
}
public class TVFactory {
/**
* 生产华为电视机
* @return
*/
public HuaweiTV createHuaweiTV() {