Sobes.tech
Junior

Kas ir saskarne C#?

sobes.tech AI

Atbilde no AI

C# valodā saskarne ir līgums, kas definē locekļu (metožu, īpašību, notikumu, indeksatoru) kopumu, bet ne satur to īstenojumu. Klases un struktūras var īstenot vienu vai vairākas saskarnes, apņemoties nodrošināt visu saskarnes locekļu īstenojumu.

Galvenās īpašības:

  • Ļauj sasniegt polimorfismu.
  • Definē uzvedību, nevis stāvokli.
  • Var saturēt tikai locekļu deklarācijas bez piekļuves modifikatoriem (pēc noklusējuma public).
  • Tieši nevar tikt izveidots (instancēts).
  • Atbalsta daudzmantošanu (viena klase var īstenot vairākas saskarnes).
  • Ar .NET Core 3.0+ ieviesti noklusējuma saskarnes, kas ļauj nodrošināt locekļu īstenojumu.

Piemērs:

// Saskarnes definīcija
public interface ICustomer
{
    string GetFullName(); // Metodes deklarācija
    int CustomerId { get; } // Īpašības deklarācija
}

// Klase, kas īsteno saskarni
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})";
    }
}