Método virtual

Definição - O que significa Método Virtual?

Um método virtual é um método de classe declarado que permite a substituição por um método com a mesma assinatura de classe derivada. Métodos virtuais são ferramentas usadas para implementar o recurso de polimorfismo de uma linguagem orientada a objetos, como C #. Quando um método de instância de objeto virtual é chamado, o método a ser chamado é determinado com base no tipo de tempo de execução do objeto, que geralmente é o da classe mais derivada.

Definirtec explica o método virtual

Um método virtual é usado para substituir a implementação da classe base especificada quando um objeto de tempo de execução é do tipo derivado. Assim, os métodos virtuais facilitam a funcionalidade consistente de um conjunto de objetos relacionados.

Um exemplo de implementação de método virtual são as classes Manager e Clerk, derivadas da classe base Employee com um método virtual CalculateSalary, que pode ser substituído em classes derivadas com a lógica necessária para o tipo apropriado. Uma lista de objetos do tipo Employee pode ser chamada em tempo de execução para calcular um salário - sem saber o tipo de implementação específico.

A implementação de métodos virtuais difere em linguagens de programação como C ++, Java, C # e Visual Basic .NET. Em Java, todos os métodos não estáticos são virtuais por padrão, com exceção dos métodos que são privados ou marcados com a palavra-chave final. C # requer a palavra-chave virtual para métodos virtuais, com exceção de métodos privados, estáticos e abstratos, e a substituição de palavra-chave para substituir o método da classe derivada.

Um método virtual puro é um método virtual que obriga uma classe derivada a implementar um método e não permite a instanciação da classe base ou classe abstrata.