Índice:
Definição - O que significa Método Virtual?
Um método virtual é um método de classe declarado que permite substituir 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.Techopedia explica 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 Funcionário pode ser chamada em tempo de execução para calcular um salário - sem conhecer o tipo de implementação específico.
A implementação do método virtual difere nas 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 privados ou marcados com a palavra-chave final. O C # requer a palavra-chave virtual para métodos virtuais, com exceção dos métodos privado, estático e abstrato, e a palavra-chave override para substituir o método da classe derivada.
Um método virtual puro é um método virtual que exige que uma classe derivada implemente um método e não permite instanciação da classe base ou da classe abstrata.
