Encodera

Спасибо, что читаете!

Пожертвуйте сайту, мы стараемся ради вас.

Справочник Java

extends

Объявляет наследование: класс получает поля и методы родителя.

Доступно с: Java 1.0

Синтаксис

class Child extends Parent { … }

Примеры

Наследник переопределяет метод родителя:

class Animal {
    String sound() {
        return "...";
    }
}
 
class Cat extends Animal {
    @Override
    String sound() {
        return "Meow";
    }
}
 
void main() {
    Animal a = new Cat();
    IO.println(a.sound());
}

Результат:

Meow

Примечания

Класс наследуется только от одного класса; все классы неявно наследуются от Object. Интерфейс может расширять другие интерфейсы через extends, причём сразу несколько. В обобщениях extends задаёт ограничение типа: <T extends Comparable<T>>.

Аннотация @Override необязательна, но с ней компилятор проверит, что метод действительно переопределяет родительский.

См. также

  • super — Обращается к родительскому классу: вызывает его конструктор или его версию метода.
  • implements — Указывает интерфейсы, которые реализует класс.
  • abstract — Помечает класс, объект которого создать нельзя, и метод без тела, который реализуют наследники.
  • final — Запрещает менять переменную после присваивания, переопределять метод или наследовать класс.

В учебнике

  • Наследование — Наследование классов в Java: extends, protected, вызов super(...), переопределение методов и аннотация @Override.

Спасибо, что читаете!

Пожертвуйте сайту, мы стараемся ради вас.