14
Предположим, что имеется два класса
Student2 и
GradStudent.
Класс Student2
содержит поля name и year,
а также методы Set и Display. Метод Set
инициализирует поля
объекта, а
метод Display
отображает значения этих полей на уст-
ройстве вывода.
Класс GradStudent
включает поля и методы сту-
дентов, а
также содержит элементы, уникальные для аспирантов –
поля major
и speciality, а также метод GetMajor, который вы-
водит информацию о руководителе (рис. 1.5).
Рис. 1.5. Базовый класс Student2
и производный класс GradStudent
Диаграммы объектов этих классов представлены на рис. 1.6.
Так как классы могут наследовать атрибуты и поведение других
классов, уменьшается объем нового кода, который нужно создать при
разработке программы.
Если не использовать наследование, то
для каждого класса при-
шлось бы в явной форме определять все входящие в его состав эле-
менты. В этом случае для класса GradStudent
пришлось бы явно
описать четыре поля:
name, year, major и speciality.
10 / 16
15
Благодаря наследованию класс нужно доопределить только теми эле-
ментами, которые делают его более специфическим.
Наследование
дает возможность сравнительно быстро создавать новые (
произ-
водные)
классы, добавляя поля и методы в базовые классы.
Do'stlaringiz bilan baham: