Sobes.tech
Junior — Middle

Se poate declara o variabilă în interiorul unei interfețe?

sobes.tech AI

Răspuns de la AI

В C# внутри интерфейса нельзя объявлять переменные (поля). Интерфейс может содержать только объявления методов, свойств, событий и индексаторов без реализации (до C# 8.0). Начиная с C# 8.0, интерфейсы могут содержать методы с реализацией по умолчанию, но поля по-прежнему запрещены.

Если нужно хранить состояние, его следует реализовать в классе, который реализует интерфейс.

Пример интерфейса:

public interface ILogger
{
    void Log(string message);
}

Попытка объявить поле внутри интерфейса вызовет ошибку компиляции.