Sobes.tech
Junior — Middle

Cum se realizează suprascrierea metodelor în clasele moștenite în C#?

sobes.tech AI

Răspuns de la AI

În C#, suprascrierea metodelor în clasele moștenite se face folosind cuvintele cheie virtual în clasa de bază și override în clasa derivată. Metoda din clasa de bază este declarată ca virtual, ceea ce permite descendenților să o suprascrie. În clasa derivată, o metodă cu același nume și semnătură este declarată cu cuvântul cheie override.

Exemplu:

class BaseClass
{
    public virtual void ShowMessage()
    {
        Console.WriteLine("Mesaj din clasa de bază");
    }
}

class DerivedClass : BaseClass
{
    public override void ShowMessage()
    {
        Console.WriteLine("Mesaj suprascris din clasa derivată");
    }
}

Dacă metoda din clasa de bază nu este declarată ca virtual, abstract sau override, nu poate fi suprascrisă, dar poate fi ascunsă folosind cuvântul cheie new.