设计模式-七个基本原则之一-里氏替换原则

里氏替换原则(LSP)面向对象六个基本原则之一

  • 子类与父类的替代性:子类应当能够替代父类出现的任何地方,且表现出相同的行为。
  • 行为的一致性:子类的行为必须与父类保持一致,包括输入和输出、异常处理等。
  • 接口契约:子类应当遵循父类的接口契约,保证不违反父类的方法预期。

里氏替换原则与开闭原则

开闭原则包含里氏替换原则。

里氏替换原则有更强的约束力。

  • 不同的焦点 :里氏替换原则主要关注如何正确使用继承 ,确保子类能够替代父类;而开闭原则关注如何设计系统以便于扩展,减少对现有代码的修改。
相关推荐
好奇的菜鸟6 分钟前
如何在IntelliJ IDEA中设置数据库连接全局共享
java·数据库·intellij-idea
DuelCode1 小时前
Windows VMWare Centos Docker部署Springboot 应用实现文件上传返回文件http链接
java·spring boot·mysql·nginx·docker·centos·mybatis
优创学社21 小时前
基于springboot的社区生鲜团购系统
java·spring boot·后端
幽络源小助理1 小时前
SpringBoot基于Mysql的商业辅助决策系统设计与实现
java·vue.js·spring boot·后端·mysql·spring
猴哥源码1 小时前
基于Java+springboot 的车险理赔信息管理系统
java·spring boot
YuTaoShao2 小时前
【LeetCode 热题 100】48. 旋转图像——转置+水平翻转
java·算法·leetcode·职场和发展
Dcs2 小时前
超强推理不止“大”——手把手教你部署 Mistral Small 3.2 24B 大模型
java
东阳马生架构3 小时前
订单初版—1.分布式订单系统的简要设计文档
java
Code blocks3 小时前
使用Jenkins完成springboot项目快速更新
java·运维·spring boot·后端·jenkins
荔枝吻3 小时前
【沉浸式解决问题】idea开发中mapper类中突然找不到对应实体类
java·intellij-idea·mybatis