Для чего нужно ключевое слово super в Java?

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

Ответ

Ключевое слово super в Java используется для обращения к членам родительского класса (суперкласса) из дочернего класса (подкласса). Основные случаи применения:

  1. Вызов конструктора родительского класса
    Первая строка конструктора подкласса может содержать super() для вызова конструктора суперкласса.

  2. Доступ к методам/полям родителя
    Если подкласс переопределяет метод, можно вызвать оригинальную версию через super.methodName().

Пример:

class Parent {
    void display() {
        System.out.println("Parent method");
    }
}

class Child extends Parent {
    @Override
    void display() {
        super.display(); // Вызов метода родителя
        System.out.println("Child method");
    }
}

Важно: super() в конструкторе вызывается неявно, если не указан явно (только для конструктора по умолчанию).