Sobes.tech
Junior — Middle

Как се извършва презаписването на методи в наследени класове в C#?

sobes.tech AI

Отговор от AI

В C# наследените класове методите се преписват с помощта на ключовите думи virtual в базовия клас и override в производния. Методът в базовия клас се обявява като virtual, което позволява на наследниците му да го преписват. В производния клас, метод с същото име и сигнатура се обявява с ключовата дума override.

Пример:

class BaseClass
{
    public virtual void ShowMessage()
    {
        Console.WriteLine("Съобщение от базовия клас");
    }
}

class DerivedClass : BaseClass
{
    public override void ShowMessage()
    {
        Console.WriteLine("Преписано съобщение от производния клас");
    }
}

Ако методът в базовия клас не е обявен като virtual, abstract или override, той не може да бъде преписан, но може да бъде скрит с помощта на ключовата дума new.