Объектно-ориентированное программирование на языке С++. Лясин Д.Н - 47 стр.

UptoLike

Составители: 

47
ограничений на права доступа к его внутренней реализации (например,
при наследовании защищенные компоненты базового класса доступны в
производном, а при агрегированиинет).
Возможность повторного использования классов важна не только
и зачастую не столько из-за возможности уменьшения размера исходно-
го текста программ. Построение систем классов с использованием меха-
низмов наследования и
агрегирования позволяет точнее описать в про-
грамме предметную область поставленной задачи, быстрее модифици-
ровать код программы при необходимости, ускорить процесс проекти-
рования и программирования. Любое понятие предметной области не
существует изолированно, оно существует во взаимосвязи с другими
понятиями, и мощность данного понятия во многом определяется нали-
чием таких связей. Раз
класс служит для представления понятий, встает
вопрос, как представить взаимосвязь понятий. Понятие производного
класса и поддерживающие его языковые средства служат для представ-
ления иерархических связей, иными словами, для выражения общности
между классами. Например, понятия окружности и треугольника связа-
ны между собой, так как оба они представляют еще понятие фигуры, то
есть
содержат более общее понятие. Чтобы представлять в программе
окружности и треугольники и при этом не упускать из вида, что они яв-
ляются фигурами, надо явно определять классы «окружность» и «тре-
угольник» так, чтобы было видно, что у них есть общий класс – «фигу-
ра». Это можно сделать, объявив класс «фигура» базовым,
а классы «ок-
ружность» и «треугольник»-унаследовать от него.
4.2. Объявление наследования классов в С++
ограничений на права доступа к его внутренней реализации (например,
при наследовании защищенные компоненты базового класса доступны в
производном, а при агрегировании – нет).
     Возможность повторного использования классов важна не только
и зачастую не столько из-за возможности уменьшения размера исходно-
го текста программ. Построение систем классов с использованием меха-
низмов наследования и агрегирования позволяет точнее описать в про-
грамме предметную область поставленной задачи, быстрее модифици-
ровать код программы при необходимости, ускорить процесс проекти-
рования и программирования. Любое понятие предметной области не
существует изолированно, оно существует во взаимосвязи с другими
понятиями, и мощность данного понятия во многом определяется нали-
чием таких связей. Раз класс служит для представления понятий, встает
вопрос, как представить взаимосвязь понятий. Понятие производного
класса и поддерживающие его языковые средства служат для представ-
ления иерархических связей, иными словами, для выражения общности
между классами. Например, понятия окружности и треугольника связа-
ны между собой, так как оба они представляют еще понятие фигуры, то
есть содержат более общее понятие. Чтобы представлять в программе
окружности и треугольники и при этом не упускать из вида, что они яв-
ляются фигурами, надо явно определять классы «окружность» и «тре-
угольник» так, чтобы было видно, что у них есть общий класс – «фигу-
ра». Это можно сделать, объявив класс «фигура» базовым, а классы «ок-
ружность» и «треугольник»-унаследовать от него.


     4.2. Объявление наследования классов в С++




                                 47