Skip to content
julinha edited this page Oct 11, 2023 · 4 revisions

LCP

Liskov Substitution Principle ​

Princípio da substituição de Liskov — Uma classe derivada deve ser substituível por sua classe base. ​

"Se S é um subtipo de T, então os objetos do tipo T, em um programa, podem ser substituídos pelos objetos de tipo S sem que seja necessário alterar as propriedades deste programa." ​

Na prática, todas as classes filhas (que foram implementadas através de uma herança) devem manter os mesmos comportamentos da classe pai. Isto é, classes derivadas podem ser substitutas de suas classes base, ou ainda: toda e qualquer classe derivada pode ser usada como se fosse a classe base.

Exemplo

pessoa

Exemplos Código

codigo

  • Por que esse princípio é necessário? Atendendo a esse princípio, você garante que a classe derivada seja usada de forma transparente onde a classe base é vista. Assim, todo código que depende da classe base poderá usar qualquer uma das derivadas em tempo de execução mesmo sem saber da existência delas.

  • Portanto, com esse princípio em mente atente-se a sua hierarquia de classes e faça bom uso do polimorfismo.

Clone this wiki locally