考虑以下类的组织方式:
interface Restaurant
{
public void dine(Object dish);
}
class ItalianRestaurant implements Restaurant
{
public void dine(Object dish)
{
// eat with spoon and forks
}
}
class ChineseRestaurant implements Restaurant
{
public void dine(Object dish)
{
// eat with chopsticks
}
}
由于这两家餐厅提供完全不同的菜肴,那么在界面设计方面,如何正确地表示“菜品”的“类型”呢?
将所有菜肴 -- 意大利菜和中式菜 -- 定义为接口的一部分,并使用该枚举作为“菜品”的“类型”,是否是一个好的设计决策呢?
Dish
? - CollinD