РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
107 of 1163 menu

Аннотация Override

Аннотация Override сообщает компилятору, что текущий метод переопределяет метод родительского класса или интерфейса. Это необязательная, но очень полезная аннотация, так как она помогает обнаружить ошибки на этапе компиляции: если метод, помеченный Override, по какой-то причине не переопределяет метод суперкласса (например, из-за опечатки в имени или неверных параметров), компилятор выдаст ошибку. Аннотация не имеет параметров и не влияет на работу программы во время выполнения.

Синтаксис

@Override public returnType methodName(parameters) { // body }

Пример

Давайте создадим родительский класс Animal и дочерний класс Dog, в котором переопределим метод makeSound с помощью аннотации Override:

class Animal { public void makeSound() { System.out.println("Some sound"); } } class Dog extends Animal { @Override public void makeSound() { System.out.println("Woof"); } } public class Main { public static void main(String[] args) { Animal myDog = new Dog(); myDog.makeSound(); } }

Результат выполнения кода:

"Woof"

Пример

Если допустить ошибку в имени метода и пометить его аннотацией Override, компилятор сообщит об ошибке:

class Animal { public void makeSound() { System.out.println("Some sound"); } } class Dog extends Animal { @Override public void makeSund() { System.out.println("Woof"); } }

Компилятор выдаст ошибку, так как метод makeSund не переопределяет метод makeSound из класса Animal. Без аннотации Override такая ошибка осталась бы незамеченной.

Смотрите также

  • аннотация Annotation,
    которая является базовой для всех аннотаций
  • аннотация Deprecated,
    которая помечает устаревший код
  • аннотация SuppressWarnings,
    которая подавляет предупреждения компилятора
  • аннотация FunctionalInterface,
    которая помечает функциональный интерфейс
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить