开发者社区> 问答> 正文

面向对象的五大基本原则中,Liskov 替换原则是什么?

面向对象的五大基本原则中,Liskov 替换原则是什么?

展开
收起
云上静思 2021-10-20 15:22:35 433 0
1 条回答
写回答
取消 提交回答
  • 其核心思想是:子类必须能够替换其基类。这一思想体现为对继承机制的约束规范,只有子类能够替换基类时,才能保证系统在运行期内识别子类,这是保证继承复用的基础。

    在父类和子类的具体行为中,必须严格把握继承层次中的关系和特征,将基类替换为子类,程序的行为不会发生任何变化。同时,这一约束反过来则是不成立的,子类可以替换基类,但是基类不一定能替换子类。

    Liskov 替换原则,主要着眼于对抽象和多态建立在继承的基础上,因此只有遵循Liskov 替换原则,才能保证继承复用是可靠地。

    实现的方法是面向接口编程:将公共部分抽象为基类接口或抽象类,通过 ExtractAbstract Class,在子类中通过覆写父类的方法实现新的方式支持同样的职责。 Liskov替换原则是关于继承机制的设计原则,违反了 Liskov 替换原则就必然导致违反开放封闭原则。

    Liskov 替换原则能够保证系统具有良好的拓展性,同时实现基于多态的抽象机制,能够减少代码冗余,避免运行期的类型判别。

    资料来源:《Java工程师成神之路(基础篇)》,链接:https://developer.aliyun.com/topic/download?id=923

    2021-10-20 15:23:21
    赞同 展开评论 打赏
来源圈子
更多
收录在圈子:
阿里云开发者社区官方技术圈,用户产品功能发布、用户反馈收集等。
问答排行榜
最热
最新

相关电子书

更多
封闭的冲突与开放的和平 立即下载
继承与功能组合 立即下载
为并行图数据处理提供高层抽象/语言 立即下载