你能解释一下里氏替换原则吗?
Can you explain the Liskov Substitution Principle (LSP)?
题目类型: 技术面试题
这是一道技术面试题,常见于澳洲IT公司面试中。
难度: hard
分类: OOP, Design Principles
标签: SOLID, LSP
参考答案摘要
答案 里氏替换原则(LSP)指:如果 S 是 T 的子类型,那么在不改变程序正确性的前提下,任何使用 T 的地方都可以用 S 替换。子类必须遵守父类的行为契约:不加强前置条件、不削弱后置条件,并保持不变式。违反 LSP 往往会导致多态失效,需要在运行时做 instanceof/分支判断。
本题提供 STAR 原则详细解答和技术解析,登录匠人学院学习中心即可查看完整答案。