Sobes.tech
Junior

Wat is een virtuele methode in C#?

sobes.tech AI

Antwoord van AI

Een virtuele methode in C# is een methode die is gedeclareerd met het sleutelwoord virtual in de basisklasse, die kan worden overschreven in afgeleide klassen met behulp van het sleutelwoord override. Dit maakt polymorfisme mogelijk, waarbij de methode-aanroep afhangt van het werkelijke type van het object tijdens de uitvoering, en niet van het type van de variabele.

Voorbeeld:

class Animal
{
    public virtual void Speak()
    {
        Console.WriteLine("Dier maakt een geluid");
    }
}

class Dog : Animal
{
    public override void Speak()
    {
        Console.WriteLine("Woef woef");
    }
}

Animal a = new Dog();
a.Speak(); // Drukt "Woef woef" af dankzij de virtuele methode

Zonder virtual en override zou de methode-aanroep statisch zijn en zou het echte type van het object niet worden meegenomen tijdens de uitvoering.