面向对象系统的类与方法设计:原理、冲突及设计准则
1. 多态使用原则
在使用多态时,确保所有同名方法实现相同的通用操作,即语义一致。若不遵循此原则,会导致多态的滥用,例如不同类中的 computePay() 方法若语义不一致,就会使代码的理解和维护变得困难。
2. 继承机制
继承允许开发者通过复用先前定义的类作为新类的基础,逐步定义新类。常见的继承机制有单继承和多继承。
- 单继承 :子类只能有一个父类。目前,所有面向对象的方法、数据库和编程语言都允许通过单继承扩展父类的定义。
- 多继承 :子类可以从多个父类继承属性和方法,但这会使继承冲突的类型增多。
3. 继承冲突及解决建议
- 继承冲突类型
- 子类与父类存在同名属性或方法,如
Doctor类和Employee类都有ComputePay()方法。 - 父类定义修改时,会影响子类,可能引入新的冲突。
- 多继承时,可能出现两个父类的属性或方法同名、同义;不同名但同义;同名但不同义等情况。
- 子类与父类存在同名属性或方法,如
- 解决建议
- 不重新定义查询操作。
- 重新定义继承方法时,仅限制继承方法的语义。
超级会员免费看
订阅专栏 解锁全文
2401

被折叠的 条评论
为什么被折叠?



