Sobes.tech
Junior

Ի՞նչ է վիրտուալ մեթոդը C#-ում։

sobes.tech AI

Պատասխան AI-ից

C# ի մեջ վիրտուալ մեթոդը այն մեթոդն է, որը հայտարարվում է virtual բանալի բառով հիմնական դասում և կարող է վերագրանցվել ժառանգական դասերում override բանալի բառի միջոցով: Սա թույլ է տալիս իրականացնել պոլիմորֆիզմ, երբ մեթոդի կանչը կախված է օբյեկտի իրական տիպից ժամանակի ընթացքում, ոչ թե փոփոխականի տիպից:

Օրինակ՝

class Animal
{
    public virtual void Speak()
    {
        Console.WriteLine("Համայն կենդանի ձայն է հանում");
    }
}

class Dog : Animal
{
    public override void Speak()
    {
        Console.WriteLine("Հաու-հաու");
    }
}

Animal a = new Dog();
a.Speak(); // Տպում է "Հաու-հաու"՝ շնորհիվ վիրտուալ մեթոդի

Եթե չլիներ virtual և override, մեթոդի կանչը կլիներ ստատիկ և չէր հաշվի առնի օբյեկտի իրական տիպը ժամանակի ընթացքում: