Как осуществляется наследование в Java

«Как осуществляется наследование в Java» — вопрос из категории Java, который задают на 24% собеседований AQA / Automation. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

В Java наследование реализуется с помощью ключевого слова extends. Класс-наследник (подкласс) наследует поля и методы родительского класса (суперкласса), кроме приватных (private) членов.

Пример:

class Animal {
    void eat() {
        System.out.println("Eating...");
    }
}

class Dog extends Animal {
    void bark() {
        System.out.println("Barking...");
    }
}

public class Main {
    public static void main(String[] args) {
        Dog dog = new Dog();
        dog.eat();  // Наследованный метод
        dog.bark(); // Собственный метод
    }
}

Важные моменты:

  • Поддерживается только одиночное наследование (один родитель)
  • Конструкторы не наследуются, но вызываются через super()
  • Можно переопределять методы родителя (@Override)
  • final классы нельзя наследовать