Índice:
Definição - O que significa Substituição?
A substituição é um recurso de programação orientado a objetos que permite que uma classe filha forneça implementação diferente para um método que já esteja definido e / ou implementado em sua classe pai ou em uma de suas classes pai. O método substituído na classe filho deve ter o mesmo nome, assinatura e parâmetros que o da classe pai.
A substituição permite manipular diferentes tipos de dados por meio de uma interface uniforme. Portanto, um método genérico pode ser definido na classe pai, enquanto cada classe filho fornece sua implementação específica para esse método.
Techopedia explica Substituição
A versão do método invocado é determinada pelo objeto de classe. Se o objeto da classe filho for usado para chamar o método, a versão da classe filho do método será executada. Se o objeto da classe pai for usado para chamar o método, a versão da classe pai do método será executada. O método invocado é determinado no tempo de execução, enquanto na sobrecarga, o método invocado é determinado no tempo de compilação.
O C ++ e o C # suportam a substituição usando explicitamente as palavras-chave 'substituir' e 'virtual'. Java usa a palavra-chave 'super' para chamar o método da superclasse. No entanto, o C ++ não possui a super palavra-chave e usa o nome da classe base seguido pelo operador de resolução do escopo (: :).
