Объектно-ориентированное программирование на C++. Андрианова А.А - 90 стр.

UptoLike

Андрианова А.А., Исмагилов Л.Н., Мухтарова Т.М.
некоторые объекты являются частями других объектов. Подобные
взаимосвязи образуют иерархию объектов их упорядочивание.
Основными видами иерархических структур применительно к объектно-
ориентированным приложениям являются структура классов (иерархия
«is-a» «является», «is-like-a» «является подобным») и структура
объектов (иерархия «is-part-of» «является частью»), которые
определяются отношениями агрегации и обобщения.
Иерархия «is-part-of» была представлена ранее в приложении,
автоматизирующем работу деканата. Ее определяет взаимосвязь классов
«Учебная группа» (Group) и «Студент» (Student) «студент
является частью учебной группы».
Продемонстрируем использование другого вида иерархии. В том же
приложении можно определить два класса студентов: бюджетной
(Student) и контрактной (ContractStudent) формы обучения.
Большая часть их структурных и поведенческих свойств совпадает.
Объекты этих классов описываются фамилией, именем и отчеством
студента, его датой рождения, номером зачетной книжки, средним
баллом успеваемости и т.д. И те и другие сдают зачеты и экзамены,
получают баллы, переводятся на следующий курс. При этом у студентов-
контрактников имеются дополнительные характеристики: объекты этого
класса могут содержать информацию об общей стоимости обучения за
год, внесенной сумме, оставшейся задолженности, методы доступа и
изменения этих свойств, методы проверки задолженности по оплате
обучения и т.д.
Для того чтобы не определять общие свойства и методы для этих
классов дважды используются принцип ООП, называемый
наследованием. Наследование это механизм, который позволяет
создавать новые классы на основе существующих, используя их
структурные и поведенческие свойства. Новые классы называют
дочерними (производными или подклассами), а классы, на основе
которых происходит наследование, родительскими (базовыми или
суперклассами). Кроме наследуемых свойств дочерние классы обладают
дополнительными свойствами, которые и отличают их от родительских.
В нашем примере в качестве родительского класса выступает класс
Student, который наследуется дочерним классом ContractStudent.
Данное отношение классов образует иерархию вида «is-a» «студент-
контрактник является студентом».
90
                              Андрианова А.А., Исмагилов Л.Н., Мухтарова Т.М.
некоторые объекты являются частями других объектов. Подобные
взаимосвязи образуют иерархию объектов – их упорядочивание.
Основными видами иерархических структур применительно к объектно-
ориентированным приложениям являются структура классов (иерархия
«is-a» – «является», «is-like-a» – «является подобным») и структура
объектов (иерархия «is-part-of» – «является частью»), которые
определяются отношениями агрегации и обобщения.
     Иерархия «is-part-of» была представлена ранее в приложении,
автоматизирующем работу деканата. Ее определяет взаимосвязь классов
«Учебная группа» (Group) и «Студент» (Student) – «студент
является частью учебной группы».
     Продемонстрируем использование другого вида иерархии. В том же
приложении можно определить два класса студентов: бюджетной
(Student) и контрактной (ContractStudent) формы обучения.
Большая часть их структурных и поведенческих свойств совпадает.
Объекты этих классов описываются фамилией, именем и отчеством
студента, его датой рождения, номером зачетной книжки, средним
баллом успеваемости и т.д. И те и другие сдают зачеты и экзамены,
получают баллы, переводятся на следующий курс. При этом у студентов-
контрактников имеются дополнительные характеристики: объекты этого
класса могут содержать информацию об общей стоимости обучения за
год, внесенной сумме, оставшейся задолженности, методы доступа и
изменения этих свойств, методы проверки задолженности по оплате
обучения и т.д.
     Для того чтобы не определять общие свойства и методы для этих
классов    дважды     используются    принцип    ООП,    называемый
наследованием. Наследование – это механизм, который позволяет
создавать новые классы на основе существующих, используя их
структурные и поведенческие свойства. Новые классы называют
дочерними (производными или подклассами), а классы, на основе
которых происходит наследование, – родительскими (базовыми или
суперклассами). Кроме наследуемых свойств дочерние классы обладают
дополнительными свойствами, которые и отличают их от родительских.
     В нашем примере в качестве родительского класса выступает класс
Student, который наследуется дочерним классом ContractStudent.
Данное отношение классов образует иерархию вида «is-a» – «студент-
контрактник является студентом».



90