Junior — Middle
Pode explicar o que são métodos abstratos na linguagem C# e em que se diferenciam dos métodos normais?
sobes.tech IA
Resposta da IA
Métodos abstratos em C# são métodos declarados em uma classe abstrata sem implementação. Eles funcionam como um modelo que todas as classes derivadas devem implementar. Diferentemente dos métodos normais, os abstratos não têm corpo (implementação) na classe base e exigem ser sobrescritos nas classes herdadas.
Exemplo:
abstract class Animal
{
public abstract void MakeSound(); // método abstrato
}
class Dog : Animal
{
public override void MakeSound()
{
Console.WriteLine("Au-au");
}
}
Aqui, MakeSound é um método abstrato que deve ser implementado na classe Dog. Métodos normais têm uma implementação e podem ser chamados diretamente, enquanto os abstratos servem para definir a interface obrigatória para as classes herdadas.