Как инициализировать поля из интерфейса?

Инициализация полей из интерфейса в Java выполняется посредством реализации интерфейса в классе и присваивания значений этим полям в реализующем классе.

В интерфейсе можно объявить поля, которые необходимо инициализировать. Эти поля по умолчанию обладают модификатором public static final, что означает, что они являются константами и должны быть проинициализированы при объявлении или в статическом блоке.

На практике инициализация полей из интерфейса выглядит следующим образом:

public interface MyInterface {
    int NUMBER = 10;
    String TEXT = "Hello";
}

public class MyClass implements MyInterface {
    public static void main(String[] args) {
        System.out.println(NUMBER);  // 10
        System.out.println(TEXT);    // Hello
    }
}

Однако, следует отметить, что поля в интерфейсах, как правило, используются для объявления констант и не предполагают изменения значений. Обычно использование переменных в интерфейсе не считается хорошей практикой, поскольку нарушает принципы объектно-ориентированного программирования и приводит к ненужной сложности в коде.

Вместо использования полей в интерфейсах, рекомендуется использовать методы для определения поведения, а константы - вынести в отдельные классы или перечисления для лучшего соблюдения принципов SOLID и более гибкой конфигурации программы.