Изучаем Java

Вы здесь: Главная >> Java-самоучитель >> Наследование в Java

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


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

Класс может быть наследником другого класса, наследуя его все открытые и защищенные методы, а также возможность доступа к полям аналогичной степени доступности. Пример наследования класса представлен в листинге 4.9.

Листинг 4.9.
Пример наследования класса

В ООП (объектно-ориентированном программировании) есть также ссылка super. Она работает так же, как this, только вызывает методы и поля суперкласса, т.е. родительского класса (листинг 4.10).

Листинг 4.10.
Пример использования ссылки super

Возможно так называемое переопределение методов. Скажем, в базовом и дочернем классах есть методы с одинаковым именем и одинаковыми параметрами. В таком случае уместно говорить о переопределении методов, т.е. в дочернем классе изменяется реализация уже существовавшего в базовом классе метода. Поля нельзя переопределить, их можно только скрыть. Рассмотрим переопределение методов (листинг 4.11).

Листинг 4.11.
Переопределение методов

Если пометить метод модификатором final, то метод не может быть переопределен. Иногда требуется, чтобы методы были не определены, а только объявлены (т.е. не была бы представлена реализация метода). Такие методы могут быть реализованы в дочерних классах.
В таком случае их нужно пометить как abstract (при этом класс, который содержит данный метод, должен быть тоже объявлен как абстрактный). Приведем пример подобного класса (листинг 4.12).

Листинг 4.12.
Пример использования модификатора abstract для объявления класса


Партнеры сайта