Встречается на собеседованиях • сегодня

В чем разница между наследниками

Наследники в Java — это классы, которые расширяют другой класс (родительский) через ключевое слово extends или реализуют интерфейсы через implements.

Ключевые различия:

  1. Классы (extends) — наследуют поля и методы родителя (кроме private), могут переопределять методы (@Override).
  2. Интерфейсы (implements) — обязаны реализовать все абстрактные методы интерфейса (если класс не абстрактный).

Пример:

java
class Animal { void sound() { System.out.println("..."); } }  
class Dog extends Animal {  
    @Override  
    void sound() { System.out.println("Гав!"); }  
}  

Нюансы:

  • Множественное наследование запрещено для классов, но допустимо для интерфейсов.
  • Интерфейсы могут содержать default-методы с реализацией (с Java 8).
  • Абстрактные классы могут иметь состояние (поля), интерфейсы — нет (до Java 8).
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы