package comm.lbb.jcc;
abstract class Meal {
abstract String getName ();
}
class Rice extends Meal{
@Override
String getName() {
return "白米饭";
}
}
class Dish extends Meal {
@Override
String getName() {
return "辣椒炒肉";
}
}
class Soup extends Meal {
@Override
String getName() {
return "紫菜蛋花汤";
}
}
class MealFactory {
public Meal makeMeal (String name) {
Meal meal = null;
if ("白米饭".equals(name)) {
meal = new Rice();
} else if ("辣椒炒肉".equals(name)) {
meal = new Dish();
} else if ("紫菜蛋花汤".equals(name)) {
meal = new Soup();
}
return meal;
}
}
public class Clients {
public static void main(String[] args) {
MealFactory mf = new MealFactory();
System.out.println(mf.makeMeal("紫菜蛋花汤"));
}
}
以上是自己写的一段代码,记录学习情况,如有不对,请多见谅。