Назад Уперед Зміст

Види відносин між класами

Класи в проекті не є незалежними. Між ними існують певні відносини.

Розглянемо два основні відношення між класами:

Відношення спадкування

Класи А и В перебувають відносно спадкування, якщо між об'єктами цих класів існує відношення «є».

Наприклад, класи Квадрат і Прямокутник.

Ясно, що ці класи зв'язані відношенням спадкування, тому що «квадрат є прямокутником». Причому, батьківським класом є Прямокутник, а дочірнім Квадрат.

Відношення агрегації(клієнт – постачальник)

Класи А и В перебувають відносно агрегації, якщо одним з полів класу В є об'єкт класу А.

Тобто об'єкт класу A "вкладений" у клас B.

Клас А називається постачальником класу В, клас В називається клієнтом класу А.

Відношення "клієнт - постачальник" називають також відношенням вкладеності або вбудовування.

Між об'єктами цих класів існує відношення «має» або «полягає».

Наприклад, клас череда і клас корова.Череда складається з корів.

Тому в класі череда як поле буде існувати масив об'єктів класу корова. Тобто клас корова вкладений у клас череда.

Проектування відносин між класами

Коли використовувати спадкування і коли агрегацію(вкладеність)?

Якщо один клас є підмножиною іншого, то повинне бути використане спадкування;

Якщо один клас є контейнером для іншого, то повинна бути використана вкладеність.

Назад Уперед Зміст