Junior — Middle
Hogyan történik a metódusok felülírása öröklődő osztályokban C#-ban?
sobes.tech MI
Válasz az MI-től
C#-ban az öröklődő osztályokban a metódusok felülírását a virtual kulcsszóval az alap osztályban és az override kulcsszóval az származtatott osztályban végzik. Az alap osztályban a metódus virtual-ként van deklarálva, ami lehetővé teszi az leszármazottak számára, hogy felülírják. A származtatott osztályban ugyanazzal a névvel és szignatúrával egy metódus override-ként van deklarálva.
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 a származtatott osztályból");
}
}
Ha az alap osztály metódusa nincs virtual, abstract vagy override-ként deklarálva, akkor nem írható felül, de a new kulcsszóval elrejthető.