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

Наследование

Наследование - это механизм, позволяющий одному классу (наследнику) перенимать поля и методы другого класса (родителя). Для этого в объявлении класса-наследника используется ключевое слово extends. В первом параметре указывается имя класса-родителя, от которого наследуются члены. Класс-наследник получает доступ ко всем public и protected членам родителя, а также может добавлять собственные поля и методы или переопределять унаследованные.

Синтаксис

class Child extends Parent { // fields and methods }

Пример

Давайте создадим класс-родитель Animal с методом sound и класс-наследник Dog, который наследует этот метод:

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

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

"Some sound"

Пример

Наследник может переопределять методы родителя и добавлять собственные. Давайте переопределим метод sound и добавим метод wagTail:

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

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

"Woof" "Tail is wagging"

Пример

Наследник может обращаться к членам родителя через ключевое слово super. Давайте вызовем метод родителя из переопределённого метода:

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

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

"Some sound" "Woof"

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

  • ключевое слово extends,
    которое указывает класс-родитель
  • ключевое слово super,
    которое обращается к членам родителя
  • модификатор protected,
    который открывает доступ наследникам
  • модификатор final,
    который запрещает наследование
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить