我有一堂很长的课,我无法拆分,因为我需要一个数据库表(Google AppEngine + Objectify)中的所有字段。我已经尽可能地使用嵌入式类。该类主要由 getter 和 setter 以及它们背后的逻辑组成。
为了获得功能块,我决定使用重复继承。现在看起来像这样:
MyStoredModel extends
AbstractSettingsModel extends
AbstractHierarchyModel
(处理父/子对象)extends
AbstractInformationModel
(包含标题,描述,...)extends
- ......
AbstractModel
更容易看到每个班级在做什么,而且我还说它更容易测试。缺点是“继承链”。
这被认为是不良行为吗?有什么更好的方法来缩小班级规模?