美文网首页
里氏代换原则(LSP)

里氏代换原则(LSP)

作者: NoNothing | 来源:发表于2020-05-13 00:35 被阅读0次

1.面向对象设计的重要原则是创建抽象化,并且从抽象化导出具体化。
2.里氏代换原则的严格表达是:如果对每一个类型为T1的对象o1,都有类型为T2的对象o2,使得以T1定义的所有程序P在所有的对象o1都代换成o2时,程序P的行为没有变化,那么类型T2是类型T1的子类型。换言之,一个软件实体如果使用的是一个基类的话,那么一定适用于其子类,而且根本察觉不出基类对象和子类对象的区别。
3.里氏代换原则是继承复用的基石。
4.描写一个物体大小的量度有精度和准确度两种属性。所谓精度,就是这个量的有效数字有多少位;而所谓准确度,是这个量与真实的物体大小相符合到什么程度。一个量可以有很高的精度,但是却无法与真实物体的情况相吻合。Java语言编译器所能够检查的,仅仅是相当于精度的属性而已,它无法检查这个量与真实物体的差距。换言之,Java编译器不能检查一个系统在实现和商业逻辑上是否满足里氏代换法则。
5.正方形是否是长方形子类的问题。正方形、长方形应当是四边形的子类。这个例子意味着里氏代换与通常的数学法则和生活常识有不可混淆的区别。
6.Java语言中,String类型是一个final类型,因此不可以继承。

相关文章

网友评论

      本文标题:里氏代换原则(LSP)

      本文链接:https://www.haomeiwen.com/subject/etvwnhtx.html