java поля в интерфейсах

  • Автор темы Lucania
  • 31
  • Обновлено
  • 05, May 2023
  • #1
В Java начиная с версии 8 появилась возможность создавать default-методы в интерфейсах.

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

Это делается при помощи ключевого слова
 final
и указания модификатора
 public static
. Пример объявления константы в интерфейсе: javaCopy code
 public interface MyInterface {

public static final int MY_CONSTANT = 42;
}
В Java 9 появилась возможность объявлять приватные методы в интерфейсах.

Приватный метод может использоваться только внутри интерфейса и не может быть вызван из классов, реализующих интерфейс.

Пример объявления приватного метода в интерфейсе: csharpCopy code
 public interface MyInterface {

default void myMethod() {

int result = calculate();

System.out.println(result);

}

private int calculate() {

// some complex calculation

}
}
Также в Java 9 появилась возможность объявлять приватные статические методы в интерфейсах.

Эти методы могут использоваться только внутри интерфейса и не могут быть вызваны из классов, реализующих интерфейс.

Пример объявления приватного статического метода в интерфейсе: csharpCopy code
 public interface MyInterface {

static void myStaticMethod() {

int result = calculate();

System.out.println(result);

}

private static int calculate() {

// some complex calculation

}
}
Поля в интерфейсах могут быть объявлены только как константы.

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

Пример объявления константы с значением по умолчанию в интерфейсе: javaCopy code
 public interface MyInterface {

public static final int MY_CONSTANT = 42;

public static final String MY_STRING_CONSTANT = "Hello, world!";
}

Lucania


Рег
02 Feb, 2023

Тем
27158

Постов
27328

Баллов
298908
Тем
49554
Комментарии
57426
Опыт
552966

Интересно