Java 中的 IS 关系

问题描述 投票:0回答:1

我想写一家披萨店,你可以在那里订购披萨和面食。该图显示了我如何对其进行建模,但我不知道如何实现菜肴和披萨/意大利面之间的 IS 关系。有什么建议吗?

java entity-relationship modeling
1个回答
1
投票

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

© www.soinside.com 2019 - 2024. All rights reserved.