Суббота, 14.06.2025, 16:48
Приветствую Вас Гость | RSS
Форма входа
Поиск
Календарь
«  Июнь 2025  »
ПнВтСрЧтПтСбВс
      1
2345678
9101112131415
16171819202122
23242526272829
30
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0

Ассоциация: агрегация (агрегирование) и композиция

Использование объекта одного класса в качестве поля другого называется в общем случае ассоциацией. Ассоциация может быть однонаправленной и двунаправленной.

Однонаправленная ассоциация может быть двух типов: агрегация (агрегирование) или композиция

Агрегация - это связь типа "целое - часть". Агрегация предполагает включение одного класса в качестве поля (части) другого по ссылке. Т.е. объект включаемого класса может существовать без своего объекта - контейнера (Например, отношение "факультет - профессор", профессор может существовать вне факультета). При этом один объект может входить в состав только одного контейнера.

Композиция - это, по сути, агрегация (агрегирование) по значению. Т.е. композиция предполагает включение одного класса в качестве поля (части) другого по значению. Т.е. объект включаемого класса НЕ может существовать без своего контейнера (Например, отношение "университет - факультет, факультет не может существовать вне университета").

Агрегацией и композицией являются также и массивы элементов включаемых типов.