- 05, May 2023
- #1
В Java начиная с версии 8 появилась возможность создавать default-методы в интерфейсах.
Default-метод – это метод, который имеет реализацию по умолчанию, но может быть переопределен в классах, реализующих интерфейс. Кроме того, в интерфейсах могут объявляться константы.
Это делается при помощи ключевого слова
Приватный метод может использоваться только внутри интерфейса и не может быть вызван из классов, реализующих интерфейс.
Пример объявления приватного метода в интерфейсе: csharpCopy code
Эти методы могут использоваться только внутри интерфейса и не могут быть вызваны из классов, реализующих интерфейс.
Пример объявления приватного статического метода в интерфейсе: csharpCopy code
Начиная с Java 8, константы в интерфейсах могут иметь значения, заданные по умолчанию.
Пример объявления константы с значением по умолчанию в интерфейсе: javaCopy code
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!";
}