接口:
package day03;
public interface Miaotiao {
void makeMiaotiao();
}
三个实现类:
package day03;
public class LazhouMiaotiao implements Miaotiao{
@Override
public void makeMiaotiao() {
System.out.println("做了一碗兰州拉面");
}
}
package day03;
public class ChenMian implements Miaotiao{
@Override
public void makeMiaotiao() {
System.out.println("做了一碗抻面");
}
}
package day03;
public class ShouganMian implements Miaotiao {
@Override
public void makeMiaotiao() {
System.out.println("做了一碗手擀面");
}
}
生产面条的工厂(面馆)
package day03;
public class MianGuanFactory {
public final static int lanzhouMian = 1;
public final static int chenMian = 2;
public final static int shouGanMian = 3;
public static Miaotiao makeMian(int type) {
Miaotiao miantiao = null;
switch (type) {
case 1:
miantiao = new LazhouMiaotiao();
break;
case 2:
miantiao = new ChenMian();
break;
case 3:
miantiao = new ShouganMian();
break;
}
return miantiao;
}
}
运行测试类:
package day03;
public class Yunxing {
public static void main(String[] args) {
Miaotiao makeMian = MianGuanFactory.makeMian(MianGuanFactory.chenMian);
makeMian.makeMiaotiao();
}
}