知识卡片
泛化需可替换
内容
泛化在软件视角下常对应继承,但有效继承依赖可替换性:任何需要超类型的地方都应能使用子类型。否则继承只是共享代码,容易破坏调用者假设。
参考来源
- 位置:《UML精粹:标准对象建模语言简明指南》第3章《类图:基础》(源文件:_epub-src/EPUB/2.xhtml)
- 结论依据:原文围绕“高效使用继承的一条重要原则是可替换性”给出定义、对比或使用限制,说明该概念的含义和适用边界,因此可推出本卡片结论。
- 原始内容:高效使用继承的一条重要原则是可替换性(substitutability)。在任何需要Customer的代码里面,应该能够替换为Corporate Customer,且一切工作正常。本质上,这意味着...