Junior — Middle
Ar galima interfeise deklaruoti kintamuosius ar laukus?
sobes.tech AI
Atsakymas iš AI
C# kalboje interfeisuose nėra galima deklaruoti įprastų kintamųjų ar laukų, nes interfeisas apibrėžia tik sutartį — metodų, savybių, įvykių ir indeksatorių rinkinį be įgyvendinimo.
Tačiau nuo C# 8.0 versijos interfeisuose galima deklaruoti:
- Konstantes (statiški readonly laukai su inicializacija)
- Statinius metodus su įgyvendinimu
- Numatytojių savybių įgyvendinimo
Tačiau įprastų, nestatinio pobūdžio laukų deklaruoti interfeisuose negalima.
Pavyzdys, kaip deklaruoti konstantą interfeise:
public interface IExample
{
const int MaxValue = 100;
void DoWork();
}