要求:设计一个名为“过敏”的类,该类提供有关患者过敏的信息。例如谁报告了过敏(患者/医生/亲戚),检测到的过敏的不同症状,严重程度,在该患者中检测到过敏时返回的方法。

我在想这样的事情:

public abstract class Allergy{
    private String reporter;
    private String symptoms;
    private int timeReported;
    private int severity;

//Higher the number, higher the severity

    public Allergy(String reporter, String symptoms, int timeReported, int severity){
        this.reporter=reporter;
        this.symptoms=symptoms;
        this.timeReported=timeReported;
        this.severity=severity;
    }

    public void setReporter(String reporter){
        this.reporter=reporter;
    }

    public void setSymptoms(String symptoms){
        this.symptoms=symptoms;
    }

    public void setSeverity(int severity){
        this.severity=severity;
    }

    public void setTimeReported(int timeReported){
        this.timeReported=timeReported;
    }

    public String getReporter(){
        return reporter;
    }

    public String getSymptoms(){
        return symptoms;
    }

    public int getSeverity(){
        return severity;
    }

    public int getTimeReported(){
        return timeReported;
    }
}


这是班上的好设计吗?有什么办法可以改善设计?还是有人有更好的实施方案?

我必须能够解释许多OOP概念。除了抽象,封装和继承,我还能在脑海中使用当前的设计吗?

最佳答案

如何对严重性(低,高,中)使用枚举,对报告者(患者,医生,家庭成员等)使用枚举,对症状使用HashSet怎么样?

07-24 13:30