В чем разница между составом и агрегацией? [Дубликат]

StackOverflow https://stackoverflow.com/questions/813048

  •  03-07-2019
  •  | 
  •  

Вопрос

В чем разница между составом и агрегацией? Кто-нибудь может дать мне образец этого OOAD?

Это было полезно?

Решение

Найдено здесь

"И агрегация, и композиция - это особые виды ассоциаций. Агрегация используется для представления прав собственности или отношений «целое / частичное», а композиция используется для представления еще более сильной формы собственности. С составом мы получаем совпадающее время жизни части с целым. Составной объект несет исключительную ответственность за расположение своих частей с точки зрения создания и уничтожения.

Кроме того, кратность совокупного конца не может превышать единицу; то есть, это не разделено. Объект может быть частью только одного композита за один раз. Если состав разрушен, он должен либо уничтожить все его части, либо передать ответственность за них другому объекту. Составной объект может быть спроектирован с осознанием того, что ни один другой объект не разрушит его части.

Композиция может использоваться для моделирования агрегирования по значению, которое семантически эквивалентно атрибуту. Фактически, композиция в предыдущих черновиках UML первоначально называлась агрегацией по значению, с & # 8220; normal & # 8221; агрегация рассматривается как агрегация по ссылке. Определения немного изменились, но общие идеи все еще применимы. Различие между агрегацией и композицией является скорее концепцией дизайна и обычно не имеет отношения к анализу. & Quot;  Джон Мур

Другие советы

Рассмотрим ученика, мозг учащегося и школу, в которой он учится.

Мозг является частью ученика. Если ученик уничтожен, то и мозг тоже. Это композиция .

Учащийся имеет школу. Студент переживает разрушение школы, и наоборот. Это агрегация .

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top