Интерфейс имеет более высокий уровень абстракции, чем абстрактный класс и класс в Java. В интерфейсе нет реализации методов, только их объявления, тогда как абстрактный класс может иметь как абстрактные методы, так и методы с реализацией. Обычный класс в Java имеет полную реализацию методов и может создавать объекты, тогда как интерфейс и абстрактный класс не могут. Интерфейс также может наследовать от других интерфейсов и классов, что делает его еще более гибким в использовании.
1606 вопрос-ответ по Java: https://github.com/DEBAGanov/interview_questions
Tелеграмм канал: https://t.me/DEBAGanov
Мое резюме: https://github.com/DEBAGanov