Агрегация против состава
Содержание
- Содержание: Разница между агрегацией и составом
- Сравнительная таблица
- Что такое агрегация?
- Ключевые отличия
- Заключение
- Пояснительное видео
Ключевое различие между агрегацией и композицией заключается в том, что в агрегации существуют родительские дочерние отношения, в которых дочерние элементы могут существовать независимо, тогда как композиция представляет собой родительские дочерние отношения, в которых дочерние элементы не могут существовать независимо без родителя.
Ассоциация является очень важной концепцией в объектно-ориентированном программировании. В объектно-ориентированном программировании данные скрыты от не принадлежащих классу функций. Только функция-член класса может использовать данные. Любая функция, не являющаяся членом, может изменять данные, которые находятся внутри класса функции. Объект и классы являются основными понятиями объектно-ориентированного программирования. Инкапсуляция данных, которая также известна как абстракция и наследование, также достигается в объектно-ориентированном программировании. Агрегация и композиция являются типами ассоциаций и являются очень важной концепцией в объектно-ориентированном программировании. В агрегации существуют родительские дочерние отношения, в которых ребенок может существовать независимо, тогда как композиция - родительские дочерние отношения, в которых ребенок не может существовать независимо без родителя. Композиция имеет общую парадигму в объектно-ориентированном программировании, что очень важно при разработке программного обеспечения. Ограничительная форма ассоциации - это композиция, в которой есть родительские дочерние отношения, в которых ребенок не может существовать независимо без родителя. В UML он представлен крошечным сплошным бриллиантом.
По составу составная часть может быть связана с большинством в сборке. Один класс становится контейнером, а другой класс становится содержимым, находящимся в этом контейнере. Эта часть наследования очень проста, и метод одного класса может использоваться без повторного написания всего кода. В композиции есть «часть» отношений. Агрегация - это отношение класса сборки к классу составляющих. В UML это унифицированный язык моделирования, который показывает взаимосвязь агрегации с линейным сегментом. Агрегация показывает отношения, такие как один к одному, один ко многим, много ко многим. Если у одного класса есть несколько классов, существует отношение один ко многим, в то время как у многих классов есть несколько объектов, это отношение многие к одному. «Имеет» - это отношение, которое описано в агрегации.
Содержание: Разница между агрегацией и составом
- Сравнительная таблица
- Что такое агрегация?
- Ключевые отличия
- Заключение
- Пояснительное видео
Сравнительная таблица
основа | агрегирование | Сочинение |
Смысл | В агрегации есть родительские дочерние отношения, в которых ребенок может существовать независимо | Композиция - это родительские дочерние отношения, в которых ребенок не может существовать независимо без родителя.
|
ассоциация | Существует слабая ассоциация в агрегации. | Существует сильная ассоциация в составе. |
UML | В UML агрегация может быть определена с помощью отрезка | В UML состав можно определить с помощью алмаза. |
функция | Удаление сборок не влияет на агрегацию. | Удаление композиции может повлиять на композицию |
Что такое агрегация?
Агрегация - это отношение класса сборки к классу составляющих. В UML это унифицированный язык моделирования, который показывает взаимосвязь агрегации с линейным сегментом. Агрегация показывает отношения, такие как один к одному, один ко многим, много ко многим. Если у одного класса есть несколько классов, существует отношение один ко многим, в то время как у многих классов есть несколько объектов, это отношение многие к одному. «Имеет» - это отношение, которое описано в агрегации.
Что такое композиция?
Ограничительная форма ассоциации - это композиция, в которой есть родительские дочерние отношения, в которых ребенок не может существовать независимо без родителя. В UML он представлен крошечным сплошным бриллиантом. По составу составная часть может быть связана с большинством в сборке. Один класс становится контейнером, а другой класс становится содержимым, находящимся в этом контейнере. Эта часть наследования очень проста, и метод одного класса можно использовать даже без повторной записи всего кода. В композиции есть «часть» отношений.
Ключевые отличия
- В агрегации существуют родительские дочерние отношения, в которых дочерний элемент может существовать независимо, тогда как Composition - родительские дочерние отношения, в которых дочерний элемент не может существовать независимо без родителя.
- Существует слабая ассоциация в агрегации, тогда как существует сильная ассоциация в составе, тогда как существует сильная ассоциация в составе.
- В UML агрегация может быть определена с помощью сегмента линии, тогда как в UML композиция может быть определена с помощью ромба.
- Удаление сборки не влияет на агрегацию, тогда как удаление композиции может влиять на композицию
Заключение
В этой статье выше мы видим четкую разницу между агрегацией и составом на примерах.