17设计原则与思想之设计原则-理论三:里式替换(LSP)跟多态有何区别?哪些代码违背了LSP?
在上两节课中,我们学习了SOLID原则中的单一职责原则和开闭原则,这两个原则都比较重要,想要灵活应用也比较难,需要你在实践中多加练习、多加体会。今天,我们再来学习SOLID中的“L”对应的原则:里式替换原则。
整体上来讲,这个设计原则是比较简单、容易理解和掌握的。今天我主要通过几个反例,带你看看,哪些代码是违反里式替换原则的?我们该如何将它们改造成满足里式替换原则?除此之外,这条原则从定义上看起来,跟我们之前讲过的“多态”有点类似。所以,我今天也会讲一下,它跟多态的区别。
话不多说,让我们正式开始今天的学习吧!