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 բանալի բառի միջոցով։