软件设计的里氏替换原则与单一职责原则(读书笔记)

一、里氏替换原则

若对每个类型 T1 的对象 o1,都存在一个类型 T2 的对象 o2,使得在所有针对 T2 编写的程序 P 中,用 o1 替换 o2 后,程序 P 的行为功能不变,则 T1 是 T2 的子类型。

简单的阐述里氏替换原则 : 一个父类A,一个子类B继承自A类,在程序代码之中可以用子类B的对象引用去替换掉原本代码中的A类对象引用,并且程序不会出问题

要满足这个条件就需要子类A的约束要比父类B更宽松,比如父类B中一个函数访问修饰符为protected ,在子类A中就需要使用public来定义,不能使用private,因为 private 的访问控制比 protected 更严格

举一个例子 :

软件设计的里氏替换原则与单一职责原则(读书笔记)
我们将原来的Rectangle类进行拆分成两个类,一个类只有一个职责,这样的设计就满足了单一职责原则

文章知识点与官方知识档案匹配,可进一步学习相关知识Java技能树首页概览91271 人正在系统学习中

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2020年1月11日
下一篇 2020年1月11日

相关推荐