Dish
将是一个抽象类,正如 Kayaman 所说:
public abstract class Dish {
private Long id;
private String name;
private Double price;
//Getters & Setters
}
请注意,我添加了
id
属性,因为我同意 Vled:
看起来非常好,我也会为每道菜添加一个 ID,例如,如果顾客想要报告他吃的特定菜肴。
因此,
Pizza
和Pasta
将扩展它:
public class Pizza extends Dish {
private Topping toppings;
private Sauce sauce;
private Size size;
public enum Topping {
// Topping options
}
public enum Sauce {
// Sauce options
}
public enum Size {
// Size options
}
}
public class Pasta extends Dish {
private Topping toppings;
private Sauce sauce;
private Type type;
public enum Topping {
// Topping options
}
public enum Sauce {
// Sauce options
}
public enum Type {
// Type options
}
}
我将属性作为枚举,因为它们将是构成 Dish
的
options。