No que diz respeito à orientação a objetos, um princípio é
definido como aquele em que as classes derivadas de uma única
classe base são capazes de invocar os métodos que, embora
apresentem a mesma assinatura, comportam-se de maneira
diferente para cada uma das classes derivadas. É um mecanismo
por meio do qual selecionam-se as funcionalidades utilizadas de
forma dinâmica por um programa no decorrer de sua execução.
Esse princípio é conhecido por