要求:设计一个名为“过敏”的类,该类提供有关患者过敏的信息。例如谁报告了过敏(患者/医生/亲戚),检测到的过敏的不同症状,严重程度,在该患者中检测到过敏时返回的方法。
我在想这样的事情:
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怎么样?