Junior — Middle
O objeto irá mudar se o método for sobrescrito na subclasse?
sobes.tech IA
Resposta da IA
Se numa subclasse sobrescrever um método da classe base, ao chamar esse método no objeto da subclasse será utilizada a nova implementação. O próprio objeto como instância da subclasse não muda, mas o comportamento do método muda. Isso permite modificar ou expandir a funcionalidade sem alterar a classe original.
Exemplo em C#:
class BaseClass
{
public virtual void ShowMessage()
{
Console.WriteLine("Mensagem da classe base");
}
}
class DerivedClass : BaseClass
{
public override void ShowMessage()
{
Console.WriteLine("Mensagem da subclasse");
}
}
// Uso
BaseClass obj = new DerivedClass();
obj.ShowMessage(); // Vai exibir: "Mensagem da subclasse"
Dessa forma, o objeto não muda como estrutura, mas seu comportamento através do método é alterado.