Junior — Middle
Czy można deklarować zmienne lub pola w interfejsie?
sobes.tech AI
Odpowiedź od AI
W C# nie można deklarować zwykłych zmiennych lub pól w interfejsach, ponieważ interfejs określa tylko kontrakt — zestaw metod, właściwości, zdarzeń i indeksatorów bez implementacji.
Jednak od wersji C# 8.0, w interfejsach można deklarować:
- Stałe (pola static readonly z inicjalizacją)
- Statyczne metody z implementacją
- Właściwości z domyślną implementacją
Nie można jednak deklarować zwykłych, niestatycznych pól w interfejsach.
Przykład stałej w interfejsie:
public interface IExample
{
const int MaxValue = 100;
void DoWork();
}