В Java какая разница / различия между суперклассами и интерфейсами?
Класс, я так понимаю, может экстендить/наследовать суперкласс - это значит он похож на него по полям и методам.
Класс, насколько я понимаю, может имплементить/реализовывать интерфейс - это значит он будет похож на него по полям и методам.
На данный момент найдены следующие различия между суперклассами и интерфейсами:
ОТЛИЧИЕ 1: класс имеет право наследовать только от ОДНОГО суперкласса, а реализовывать интерфейс может от очень большого количества интерфейсов. Думаю есть еще отличия. (спасибо @NarasuOo)
ОТЛИЧИЕ 2: в суперклассе МОЖНО создавать объект, а в интерфейсе - нельзя.
Ответы (1 шт):
Различие между ними в том, что implements означает, что Вы используете элементы интерфейса в Вашем классе, а extends означает, что Вы создаете подкласс от класса, который расширяете (extend). В новом классе Вы можете расширить только один класс, но Вы можете реализовать столько интерфейсов, сколько захотите. see also: http://mindhalls.ru/java-extends-implements-differences/