Страницы

Поиск по вопросам

пятница, 29 марта 2019 г.

Interface с реализацией

Я во всех учебниках видел, читал, тестировал interface с методами без реализации. Но вот копаюсь в дереве и тут есть методы с реализацией default. Это как понять? То есть можно реализовать интерфейс с реализацией??? Спасибо.


Ответ

Можно определить интерфейс с реализацией. Эта возможность появилась в Java 8, в более ранних версиях она была недоступна. Вот пример реализации такого интерфейса:
interface Test { default int test(int i) { return i; } }
Если в классе, реализующем этот интерфейс, метод не переопределяется, то будет использована дефолтная реализация из интерфейса.
Фактически, начиная с Java 8, интерфейс приобрёл некоторые черты обычного класса и стало возможным реализовать некий аналог множественного наследования.

Комментариев нет:

Отправить комментарий