Sobes.tech
Junior — Middle

Могу ли у интерфејсу да се проглашавају променљиве или поља?

sobes.tech АИ

Одговор од АИ

U C#-u, u interfejsima se ne mogu deklarisati obične promenljive ili polja, jer interfejs definiše samo ugovor — skup metoda, svojstava, događaja i indeksatora bez implementacije.

Međutim, od C# 8.0, u interfejsima se mogu deklarisati:

  • Konstante (statička readonly polja sa inicijalizacijom)
  • Statičke metode sa implementacijom
  • Svojstva sa podrazumevanom implementacijom

Ali obična, nestatička polja u interfejsima ne mogu se deklarisati.

Primer konstante u interfejsu:

public interface IExample
{
    const int MaxValue = 100;
    void DoWork();
}