Современные конструкции языка
Классы и наследование
-
Одиночное наследование классов (extends), множественная реализация интерфейсов (implements).
-
Вложенные/внутренние/локальные/анонимные классы — для инкапсуляции и краткости.
Абстрактные классы vs интерфейсы
-
Абстрактный класс может хранить состояние и иметь реализацию некоторых методов.
-
Интерфейсы с Java 8+ поддерживают default/static-методы, с Java 9 — private-методы для общей логики.
-
Для «контракта одного метода» используйте функциональные интерфейсы (@FunctionalInterface), лямбды и ссылки на методы.
Автор: к.п.н., Румянцев Сергей Александрович, доцент Финансового университета при Правительстве РФ; доцент ОЧУВО Международного инновационного университета; Консалтинг, управление разработкой ПО; системный и бизнес анализ; менеджмент; аналитиз данных; управление ИТ. Телефон для связи +79269444818 (мессенджеры)

Короткая ссылка:
Современные конструкции языка
Классы и наследование
-
Одиночное наследование классов (extends), множественная реализация интерфейсов (implements).
-
Вложенные/внутренние/локальные/анонимные классы — для инкапсуляции и краткости.
Абстрактные классы vs интерфейсы
-
Абстрактный класс может хранить состояние и иметь реализацию некоторых методов.
-
Интерфейсы с Java 8+ поддерживают default/static-методы, с Java 9 — private-методы для общей логики.
-
Для «контракта одного метода» используйте функциональные интерфейсы (@FunctionalInterface), лямбды и ссылки на методы.
https://webprogr.ru/~geCTm