Junior
Čo je to rozhranie v C#?
sobes.tech AI
Odpoveď od AI
Rozhranie v C# je zmluva, ktorá definuje súbor členov (metódy, vlastnosti, udalosti, indexery), ale ne obsahuje ich implementáciu. Triedy a štruktúry môžu implementovať jedno alebo viac rozhraní, pričom sa zaväzujú poskytnúť implementáciu všetkých členov rozhrania.
Kľúčové vlastnosti:
- Umožňuje dosiahnuť polymorfizmus.
- Definuje správanie, nie stav.
- Môže obsahovať iba vyhlásenia členov bez modifikátorov prístupu (implicitne
public). - Nemôže byť vytvorený priamo (inštancovaný).
- Podporuje viacnásobné dedičstvo (jedna trieda môže implementovať viac rozhraní).
- Boli zavedené predvolené rozhrania s .NET Core 3.0+, ktoré umožňujú poskytovať implementácie členov.
Príklad:
// Definícia rozhrania
public interface ICustomer
{
string GetFullName(); // Vyhlásenie metódy
int CustomerId { get; } // Vyhlásenie vlastnosti
}
// Trieda, ktorá implementuje rozhranie
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})";
}
}