Типовий приклад спадкування
У даному розділі приведено приклад спадкування від базового класу DatabaseObject, що вміщує інформацію про автора, назву роботи та дату її виконання. Клас Paintings є похідним від даного класу, в ньому зберігається інформація про видатних художників та їх праці (тип картини, її розміри тощо). Клас Music також є похідним від базового класу DatabaseObject. В ньому зберігається інформація про видатних музикантів, та додається ключ (ля-мінор, до-мажор і т.і.). Якщо необхідно розширити відомості щодо видатних музикантів та їх праць, необхідно створити вже клас похідний від Music, який збереже властивості базового, та за допомогою перевантаження функції Display() надасть можливість переглянути інформацію базового класу та нову інформацію, сформовану у похідному класі. У нашому випадку додаються інші відомості щодо видатних музикантів (камерна музика, кількість музикантів тощо).
Розглянемо дерево спадкування наданого набору класів (рис. 3.4).
Рис. 3.4. Ієрархія класів даних
Всі загальні характеристики розташовуються у верхньому вузлі дерева.
Кожний елемент містить ім’я автора, назву праці та дату. Інша інформація, як засіб відображення відомостей про об’єкт змінюється від класу до класу.
Приклад. Програма використання спадкування в ієрархії класів.
#include <iostream>
using namespace std;
Дата добавления: 2014-12-26; просмотров: 775;