Разлика между агрегиране и състав в Java

Ключова разлика - агрегация срещу композиция на Java

Агрегацията е асоциация между два обекта, която описва връзката „има-а“. Съставът е по-специфичният тип агрегация, който предполага собственост. Най- ключова разлика между агрегирането и състава в Java е това, ако съдържащият се обект може да съществува без притежаващия обект, това е съвкупност и ако съдържащият се обект не може да съществува без притежаващия обект, той е състав.

Обектно-ориентираното програмиране (OOP) е основна парадигма в разработването на софтуер. Използва се за моделиране на софтуера с помощта на обекти. Обектите са създадени с помощта на класове. Класът се състои от свойства и методи. В софтуера има множество обекти. Всеки обект си сътрудничи помежду си чрез предаване на съобщение. Връзката между два обекта е известна като асоциация. Както агрегирането, така и съставът са два вида свързване. Връзката "има-а" описва, че един обект може да използва друг обект. Агрегацията и състава могат да бъдат реализирани на поддържащи езици на OOP. Ако съдържащият се обект може да съществува без съществуването на притежаващия обект, тогава връзката между тези два обекта е агрегация. Ако съдържащият се обект не може да съществува без притежаващия обект, тогава връзката между тези два обекта е композиция.

СЪДЪРЖАНИЕ

1. Преглед и ключова разлика
2. Какво е агрегацията в Java
3. Какво е състава в Java
4. Прилики между агрегирането и състава в Java
5. Паралелно сравнение - агрегация срещу състав в Java в таблична форма
6. Резюме

Какво е агрегацията в Java?

Агрегацията е вид асоциация. Ако клас има референтна единица, той е известен като агрегиране. Агрегацията представлява връзката между връзката. Обектът на Student може да има свойства като student_id, име, адрес. Този обект може да има и друг обект, наречен адрес със собствена информация, като град, щат, държава. В тази ситуация студентът има референтен адрес на образувание. Това е връзка "има-има".

Фигура 01: Марк клас

Фигура 02: Основна програма за описание на агрегацията

Според горната програма класните марки се състоят от три свойства, които са марки Maths, English и Science. Студентът има обект Маркс. Той има свои собствени свойства, които са белези на математиката, английския и науката. В основния метод се създава обект от марки и се присвояват стойности на маркировки. Обектът на студента, който е s1, може да използва обекта марки, който е m1. Следователно, Студентът и Марките имат връзката „има-а”. Обектът Marks може да съществува без обект Student. Следователно, това е съвкупност.

Какво е състава в Java?

Съставът е вид асоциация. Това е специфична форма на агрегация, която предполага собственост. Да приемем, че има два класа, наречени клас A и B. Ако обектът от клас B не може да съществува, ако обектът от клас A е унищожен, тогава това е композиция. Книга се състои от много страници. Ако книгата бъде унищожена, страниците също ще унищожат. Обектите на страницата не могат да съществуват без обект книга. Вижте по-долу програмата.

Фигура 03: Класна стая

Фигура 04: Училищен клас

Фигура 05: Основна програма за описание на състава

Според горната програма, класната стая има две свойства, които са име и numOfStudents. Училището представлява колекция от предмети в класната стая. В основния метод се създават два обекта Classroom. Те се добавят към „класни стаи“. Тези „класни стаи“ се предават на училищния обект. И накрая, името и номерът на учениците се отпечатват чрез повторение чрез колекцията. Ако обектът School е унищожен, предметите Classroom също ще унищожат. Това е пример за композиция. Той също така съдържа връзката 'има-а' и също предполага собственост.

Каква е връзката между агрегацията и състава в Java?

  • Агрегацията и Съставът са два вида асоцииране, а Съставът е специализиран тип Агрегация. Съставът е подмножество на Агрегацията.

Каква е разликата между агрегирането и състава в Java?

Агрегация срещу Състав в Java

Агрегацията е асоциация между два обекта, която описва връзката „има“. Съставът е по-специфичен тип агрегация, който предполага собственост.
 употреба
Агрегацията се използва, когато един обект използва друг обект. Композицията се използва, когато един обект притежава друг обект.
Въздейства върху обекти
Като цяло, унищожаването на притежаващия обект няма да повлияе на съдържащия обект. По състав унищожаването на притежаващия обект ще повлияе на съдържащия обект.

Обобщение - Обобщение срещу композиция на Java

Агрегацията и Съставът са две концепции в OOP. Връзката "има-а" описва, че един обект може да използва друг обект. Агрегацията е асоциация между два обекта, която описва връзката „има-а“. Съставът е по-специфичен тип агрегация, който предполага собственост. Разликата между агрегиране и композиция в Java е, че ако съдържащият се обект може да съществува без съществуването на притежаващия обект, това е агрегация и ако съдържащият се обект не може да съществува без притежаващия обект, той е състав.

справка:

1. „Асоциация, състав и агрегация в Java.“ GeeksforGeeks, 8 февруари 2018 г. Достъпно тук 
2. „Агрегация в Java - Javatpoint.“ Java Point. Налични тук