Является ли допустимым помещать константы в определение интерфейса?

В Java допустимо помещать константы в интерфейс, так как все поля в интерфейсе по умолчанию public static final.

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

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

В Java допустимо помещать константы в интерфейс, так как все поля в интерфейсе по умолчанию public static final. Однако такой подход считается устаревшим и не рекомендуемым, так как интерфейсы предназначены для описания поведения, а не для хранения данных.

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

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

В Java допустимо помещать константы в интерфейс, так как все поля в интерфейсе по умолчанию public static final. Однако такой подход считается устаревшим и не рекомендуемым, так как интерфейсы предназначены для описания поведения, а не для хранения данных.

Лучше использовать отдельный класс с константами, например:

public final class Constants {
    public static final String ERROR_MESSAGE = "Ошибка";
    private Constants() {} // предотвращаем создание экземпляров
}

Это улучшает читаемость и архитектуру кода.

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

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

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

Подробнее