Sobes.tech
Back to questions
Junior — Middle
66

Можно ли в интерфейсе объявлять свойства или поля?

Answer from AI

sobes.tech AI

В интерфейсе C# нельзя объявлять поля, так как интерфейс определяет только контракт, то есть набор методов и свойств, которые должны быть реализованы в классах.

Однако в интерфейсе можно объявлять свойства (properties). Свойства в интерфейсе объявляются без реализации, только с сигнатурой get и/или set:

public interface IExample
{
    int MyProperty { get; set; }
}

Класс, реализующий этот интерфейс, должен предоставить конкретную реализацию этого свойства.

Итого:

  • Поля в интерфейсе объявлять нельзя.
  • Свойства в интерфейсе объявлять можно, но без реализации.