Sobes.tech
Junior — Middle

Je možné zmeniť funkcionalitu metódy prepísaním v dedičnej triede?

sobes.tech AI

Odpoveď od AI

Áno, v C# je možné zmeniť funkčnosť metódy prepísaním v odvodenom triede. Na to musí byť základná metóda deklarovaná s kľúčovým slovom virtual, a v odvodenom triede ju možno prepísať pomocou kľúčového slova override.

Príklad:

class BaseClass
{
    public virtual void ShowMessage()
    {
        Console.WriteLine("Správa z základnej triedy");
    }
}

class DerivedClass : BaseClass
{
    public override void ShowMessage()
    {
        Console.WriteLine("Prepísaná správa z odvodeného triedy");
    }
}

Volanie metódy ShowMessage na objekte DerivedClass vykoná prepísanú verziu metódy.