Какие есть возможности реализовать метод прямо в самом интерфейсе Java (не только объявить сигнатуру)?

В Java интерфейс может содержать default- и static-методы с телом, а начиная с Java 9 — private-методы для внутреннего переиспользования кода.

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

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

В Java интерфейс может содержать default- и static-методы с телом, а начиная с Java 9 — private-методы для внутреннего переиспользования кода.

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

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

В Java интерфейс может содержать default- и static-методы с телом, а начиная с Java 9 — private-методы для внутреннего переиспользования кода.

Default-метод наследуется реализациями и может быть переопределён. Static-метод вызывают через имя интерфейса; он не становится обычным экземплярным методом класса. Private-методы доступны только внутри интерфейса и помогают избежать дублирования между методами с телом. Поля интерфейса остаются константами, а конструкторов и обычного состояния экземпляра у него нет. При конфликте default-методов нескольких интерфейсов реализующий класс должен разрешить неоднозначность.

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

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

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

Подробнее