Sobes.tech
Junior — Middle

Este posibil să modificați funcționalitatea unei metode, suprascriindu-o în clasa moștenitoare?

sobes.tech AI

Răspuns de la AI

Da, în C# este posibil să modificați funcționalitatea unei metode prin suprascrierea acesteia în clasa derivată. Pentru aceasta, metoda de bază trebuie declarată cu cuvântul cheie virtual, iar în clasa derivată poate fi suprascrisă folosind 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ă");
    }
}

Apelarea metodei ShowMessage pe un obiect de tip DerivedClass va executa versiunea suprascrisă a metodei.