Qual é o modificador de substituição em C#

Qual é o modificador de substituição em C#
Em circunstâncias envolvendo programação orientada a objetos, frequentemente precisamos oferecer nossa própria implementação de um método que já é especificado na classe ou interface subjacente. O modificador de substituição C# é útil nesta situação. O modificador de substituição nos permite modificar o comportamento de um método ou propriedade herdada. Este artigo discutirá o uso do modificador de substituição em C# e como ele pode ser usado para modificar o comportamento dos membros herdados.

Qual é o modificador de substituição?

Em C#, você pode criar uma nova implementação de um método ou propriedade que já foi declarado na classe ou interface base usando o modificador de substituição. Isso nos permite mudar o comportamento de um membro herdado de uma classe derivada. Quando substituímos um método ou propriedade, podemos fornecer nossa própria implementação para esse membro, que substituirá a implementação fornecida pela classe Base ou interface.

Como usar o modificador de substituição?

Para usar o modificador de substituição, precisamos seguir as etapas abaixo:

  • Herdar a classe base ou interface que contém o método ou propriedade que queremos substituir.
  • Na classe derivada, declare um novo método ou propriedade com o mesmo nome e assinatura.
  • Use a palavra -chave substituída antes do método ou declaração de propriedade para indicar que estamos substituindo o membro herdado.

Para ajudá -lo a compreender isso em mais profundidade, aqui está um exemplo.

Considere uma classe base chamada "veículo" que tem a função "Start" em seu nome. O método de início simplesmente imprime uma mensagem para o console dizendo que o veículo começou. Agora, digamos que eu queira criar uma nova classe chamada "Car" que herda da aula de veículo, mas fornece sua própria implementação para o método de início. Veja como podemos conseguir isso usando o modificador de substituição:

usando o sistema;
veículo de classe

Public Virtual Void Start ()

Console.WriteLine ("veículo iniciado.");


Carro de aula: veículo

Substituição pública Void Start ()

Console.WriteLine ("Carro começou.");


programa de classe

estático void main (string [] args)

Veículo veículo = novo veículo ();
veículo.Começar(); // Saída: o veículo iniciado.
Carro carro = carro novo ();
carro.Começar(); // Saída: o carro iniciado.

Aqui eu criei uma nova classe chamada "Car" que herda da classe "Veículo". Eu também declarei um novo método chamado "Start" na classe "Car", com o mesmo nome e assinatura que o método na classe "veículo". Eu usei o modificador de substituição para indicar que estamos substituindo o método herdado.

Em geral, criei instâncias das aulas de veículo e de carros e chamei o método de início. Quando eu chamo o método de início no objeto do veículo, ele imprime “o veículo iniciado” para o console. Quando eu chamo o método de início no objeto do carro, ele imprime “o carro iniciado” para o console. Isso demonstra que substituímos com sucesso o método de início na classe derivada:

Conclusão

O modificador de substituição em C# é uma ferramenta poderosa que nos permite modificar o comportamento de um membro herdado. É usado para fornecer nossa própria implementação para um método ou propriedade que já está definida na classe base ou interface. Discutimos como usar o modificador de substituição em C# e demonstramos seu uso com um exemplo simples. Ao usar o modificador de substituição, podemos criar classes mais especializadas que herdam de uma classe base, mas fornecem seu próprio comportamento único.