Sobes.tech
Junior

Ի՞նչ է ինտերֆեյսը C#-ում։

sobes.tech AI

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

C# լեզվում ինտերֆեյսը պայմանագիր է, որը սահմանում է անդամների (մեթոդներ, հատկություններ, իրադարձություններ, ինդեքսատորներ) հավաքածու, բայց չի պարունակում նրանց իրականացմանը։ Կլասներն ու կառուցվածքները կարող են իրականացնել մեկ կամ մի քանի ինտերֆեյսներ, պարտավորվելով տրամադրել բոլոր անդամների իրականացումը։

Հիմնական առանձնահատկություններ՝

  • Հնարավորություն է տալիս հասնել պոլիմորֆիզմի։
  • Հիմնվում է վարքագծի վրա, ոչ թե վիճակի։
  • Կարող է պարունակել միայն անդամների հայտարարություններ՝ առանց մուտքի մոդիֆիկատորների (անվանապես public
  • Չի կարող անմիջապես ստեղծվել (օբյեկտայնացվել)։
  • Պատրաստ է բազմակի ժառանգության (մեկ դաս կարող է իրականացնել մի քանի ինտերֆեյսներ)։
  • .NET Core 3.0+-ի հետ ներկայացվեցին նախնական ինտերֆեյսներ, որոնք թույլ են տալիս տրամադրել անդամների իրականացմանը։

Օրինակ՝

// Ինտերֆեյսի սահմանում
public interface ICustomer
{
    string GetFullName(); // Մեթոդի հայտարարում
    int CustomerId { get; } // Ուղղակի հայտարարում
}

// Ինտերֆեյսը իրականցնող դաս
public class CompanyCustomer : ICustomer
{
    public int CustomerId { get; set; }
    public string CompanyName { get; set; }
    public string ContactPerson { get; set; }

    public string GetFullName()
    {
        return $"{CompanyName} ({ContactPerson})";
    }
}