假设我们有一个班级结构,其中代码分为两部分,让我们说计算机科学和商业,现在这也进一步在国家/地区划分,例如印度(cs 或 MBA)和美国(cs 或 MBA)。现在让我们考虑一个我创建类的场景
1)教育班(家长班)
2) MBA课程延伸教育课程
3) BS (cs) 类扩展教育类
现在就国家而言,我也上课了
4) INDIA_BS 类扩展了 BS (cs) 类
5)INDIA_MBA类扩展MBA类
6) US_BS 类扩展 BS (cs) 类
7) US_MBA 类扩展 MBA 类
现在让我们说我编写代码,其中国家在层次结构中最低的类方法中设置(即国家类 INDIA_BS、INDIA_MBA、US_BS、US_MBA),
但逻辑是相似的。我通过国家名称并设置它。
所以我的问题是
1)将公共逻辑放在父类中是否明智(如果我这样做)并从层次结构最低的子类中调用该方法)。
2)如果这是错误的,那么它违反的OOPS原则是什么
3)如果是的话,它是否也违反了 SOLID 原则,那么如何?
4)如果我将公共代码放在父类中,是否会降低子类的一致性。
请尽可能详细。谢谢