Sobes.tech
Back to questions
Junior — Middle
92

Какова роль и назначение ключевого слова 'super' в языке Java?

Companies where asked
Perfomance lab

Answer from AI

sobes.tech AI

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

  • Вызвать конструктор суперкласса из конструктора подкласса (super()), что обязательно, если суперкласс не имеет конструктора без параметров.
  • Обратиться к методам суперкласса, если они переопределены в подклассе, например, super.methodName().
  • Обратиться к полям суперкласса, если они скрыты одноименными полями подкласса.

Пример:

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

class Dog extends Animal {
    void sound() {
        super.sound(); // вызов метода суперкласса
        System.out.println("Bark");
    }
}

public class Main {
    public static void main(String[] args) {
        Dog dog = new Dog();
        dog.sound();
    }
}

Вывод:

Animal sound
Bark