Бьерн Страуструп - Язык программирования С++. Главы 5-8
Страница 27. Производные классы. Введение



 * ГЛАВА 6  ПРОИЗВОДНЫЕ КЛАССЫ

                 Не плоди объекты без нужды.
                                 - В. Оккам

     Эта глава посвящена понятию производного класса. Производные
     классы - это простое, гибкое и эффективное средство определения
     класса. Новые возможности добавляются к уже существующему
     классу, не требуя его перепрограммирования или перетрансляции.
     С помощью производных классов можно организовать общий
     интерфейс с несколькими различными классами так, что в других
     частях программы можно будет единообразно работать с объектами
     этих классов. Вводится понятие виртуальной функции, которое
     позволяет использовать объекты надлежащим образом даже
     в тех случаях, когда их тип на стадии трансляции неизвестен.
     Основное назначение производных классов - упростить
     программисту задачу выражения общности классов.

6.1 Введение и краткий обзор


 Любое понятие не существует изолированно, оно существует во
 взаимосвязи с другими понятиями, и мощность данного понятия во
 многом определяется наличием таких связей. Раз класс служит для
 представления понятий, встает вопрос, как представить взаимосвязь
 понятий. Понятие производного класса и поддерживающие его
 языковые средства служат для представления иерархических связей,
 иными словами, для выражения общности между классами. Например,
 понятия окружности и треугольника связаны между собой, так как
 оба они представляют еще понятие фигуры, т.е. содержат более общее
 понятие. Чтобы представлять в программе окружности и треугольники
 и при этом не упускать из вида, что они являются фигурами, надо
 явно определять классы окружность и треугольник так, чтобы было видно,
 что у них есть общий класс - фигура. В главе исследуется, что
 вытекает из этой простой идеи, которая по сути является основой того,
 что обычно называется объектно-ориентированным программированием.
 Глава состоит из шести разделов:
 $$6.2 с помощью серии небольших примеров вводится понятие производного
       класса, иерархии классов и виртуальных функций.
 $$6.3 вводится понятие чисто виртуальных функций и абстрактных
       классов, даны небольшие примеры их использования.
 $$6.4 производные классы показаны на законченном примере
 $$6.5 вводится понятие множественного наследования как возможность
       иметь для класса более одного прямого базового класса,
       описываются способы разрешения коллизий имен, возникающих
       при множественном наследовании.
 $$6.6 обсуждается механизм контроля доступа.
 $$6.7 приводятся некоторые приемы управления свободной памятью для
       производных классов.
 В последующих главах также будут приводиться примеры, использующие
 эти возможности языка.

 
« Предыдущая статья   Следующая статья »