我正在处理一个具有类层次结构的项目,如图中所示。它有很多课程,但我展示了其中的一些。问题是有些属性在许多类中重复,但在所有类中都不重复。我想通过创建具有公共属性的新类来减少出现,并在所有类中将该类用作Instance变量。这样我就可以维护我的课程,而不是维护代码中的所有出现。这些属性没有操作,类也有方法,因此它可以实现类的定义。该类有很多级别的继承,如果创建子类,它有溜溜球问题,所以我不希望它们进一步子类化。我想知道还有其他方法吗?或任何更好的方式来做到这一点。
答案 0 :(得分:2)
当你拥有所有具体课程时,你有溜溜球的问题。我建议创建一个抽象类,并将所有常见属性放在那里。我还看到你有相同属性重复的单位值属性。为此,您可以使用哈希映射只有一个属性,其中包含两个单位和值的值。