Sobes.tech
Junior — Middle

Lehetséges-e a metódus funkcionalitásának módosítása azzal, hogy felülírjuk azt az öröklődő osztályban?

sobes.tech MI

Válasz az MI-től

Igen, C#-ban lehetőség van egy metódus funkcionalitásának módosítására azzal, hogy azt öröklődő osztályban felülírjuk. Ehhez az alapmetódusnak virtual kulcsszóval kell lennie deklarálva, és az öröklődő osztályban override kulcsszóval lehet felülírni.

Példa:

class BaseClass
{
    public virtual void ShowMessage()
    {
        Console.WriteLine("Üzenet az alap osztályból");
    }
}

class DerivedClass : BaseClass
{
    public override void ShowMessage()
    {
        Console.WriteLine("Felülírt üzenet az öröklődő osztályból");
    }
}

A ShowMessage metódus hívása a DerivedClass objektumánál a felülírt verziót fogja végrehajtani.