Sobes.tech
Junior — Middle

È possibile modificare la funzionalità di un metodo sovrascrivendolo in una classe derivata?

sobes.tech AI

Risposta dell'AI

Sì, in C# è possibile modificare la funzionalità di un metodo sovrascrivendolo nella classe derivata. Per farlo, il metodo base deve essere dichiarato con la parola chiave virtual, e nella classe derivata può essere sovrascritto usando la parola chiave override.

Esempio:

class BaseClass
{
    public virtual void ShowMessage()
    {
        Console.WriteLine("Messaggio dalla classe base");
    }
}

class DerivedClass : BaseClass
{
    public override void ShowMessage()
    {
        Console.WriteLine("Messaggio sovrascritto dalla classe derivata");
    }
}

Chiamando il metodo ShowMessage su un oggetto di DerivedClass verrà eseguita la versione sovrascritta del metodo.