public class FoodOrder {
public static void main(String[] args) {
Menu menu = new ChineseCooker();
Diner diner = new Diner(menu);
diner.order();
}
}
interface Menu {
void chaoFan();
void chaoMian();
}
class ChineseCooker implements Menu { // 接口的实现者
public void chaoFan() {
System.out.println("中餐厨师做的炒饭还可以。");
}
public void chaoMian() {
System.out.println("中餐厨师做的炒面挺不错。");
}
}
class AmeriCooker implements Menu { // 接口的实现者
public void chaoFan() {
System.out.println("西餐厨师做的炒饭还可以。");
}
public void chaoMian() {
System.out.println("西餐厨师做的炒面挺不错。");
}
}
class Diner { // 接口的调用者
private Menu menu; // 接口定义为变量
public Diner() {
}
public Diner(Menu menu) {
this.menu = menu;
}
public Menu getMenu() {
return menu;
}
public void setMenu(Menu menu) {
this.menu = menu;
}
public void order() {
this.menu.chaoFan();
this.menu.chaoMian();
}
}
javase:接口实现
最新推荐文章于 2024-09-10 10:21:38 发布