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

В Java внутри интерфейса нельзя объявлять переменные с модификатором приват. Все переменные в интерфейсе по умолчанию являются:

Короткий ответ

Что ответить на собеседовании

В Java внутри интерфейса нельзя объявлять переменные с модификатором приват. Все переменные в интерфейсе по умолчанию являются:

Подробный разбор

Ответ с пояснениями

В Java внутри интерфейса нельзя объявлять переменные с модификатором приват. Все переменные в интерфейсе по умолчанию являются:

  • public
  • static
  • final

То есть они фактически являются константами, доступными всем, кто использует интерфейс.

Пример:

public interface MyInterface {
    int CONSTANT = 10; // public static final по умолчанию
}

Если попытаться объявить переменную с модификатором private внутри интерфейса, компилятор выдаст ошибку.

Начиная с Java 9, можно объявлять приватные методы внутри интерфейсов, но не приватные переменные.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее