Kluczowa różnica - Agregacja a kompozycja w Javie
Agregacja to powiązanie między dwoma obiektami, które opisuje relację „ma-a”. Kompozycja jest bardziej specyficznym typem agregacji, który zakłada własność. Kluczowa różnica między agregacją a kompozycją w Javie polega na tym, że jeśli obiekt zawarty może istnieć bez istnienia obiektu będącego właścicielem, jest to agregacja, a jeśli obiekt zawarty nie może istnieć bez istnienia obiektu będącego właścicielem, jest to kompozycja.
Programowanie zorientowane obiektowo (OOP) jest głównym paradygmatem w tworzeniu oprogramowania. Służy do modelowania oprogramowania przy użyciu obiektów. Obiekty są tworzone za pomocą klas. Klasa składa się z właściwości i metod. W oprogramowaniu jest wiele obiektów. Każdy obiekt współpracuje ze sobą poprzez przekazywanie wiadomości. Relacja między dwoma obiektami nazywana jest asocjacją. Agregacja i kompozycja to dwa typy asocjacji. Relacja „ma-a” opisuje, że jeden obiekt może używać innego obiektu. Agregację i kompozycję można zaimplementować w językach obsługujących OOP. Jeśli obiekt zawarty może istnieć bez obiektu będącego właścicielem, wówczas powiązanie między tymi dwoma obiektami jest agregacją. Jeśli zawarty obiekt nie może istnieć bez istnienia obiektu będącego jego właścicielem,wtedy skojarzeniem między tymi dwoma obiektami jest kompozycja.
ZAWARTOŚĆ
1. Omówienie i kluczowe różnice
2. Czym jest agregacja w Javie
3. Co to jest kompozycja w Javie
4. Podobieństwa między agregacją a kompozycją w Javie
5. Porównanie obok siebie - Agregacja a kompozycja w Javie w formie tabelarycznej
6. Podsumowanie
Co to jest agregacja w Javie?
Agregacja to rodzaj asocjacji. Jeśli klasa ma odwołanie do jednostki, nazywa się to agregacją. Agregacja reprezentuje relację ma-a. Obiekt ucznia może mieć właściwości, takie jak identyfikator_ ucznia, nazwa, adres. Ten obiekt może mieć również inny obiekt o nazwie adres z własnymi informacjami, takimi jak miasto, stan, kraj. W tej sytuacji Student ma adres referencyjny podmiotu. Jest to relacja typu „ma-a”.
Rysunek 01: Klasa Marks
Rysunek 02: Główny program do opisu agregacji
Zgodnie z powyższym programem klasa Oceny składa się z trzech właściwości, którymi są oceny z matematyki, języka angielskiego i nauk ścisłych. Uczeń posiada obiekt Znaków. Ma swoje właściwości, które są oznakami matematyki, języka angielskiego i nauk ścisłych. W metodzie głównej tworzony jest obiekt Marks i przypisywane są wartości ocen. Obiekt ucznia, który jest s1, może używać obiektu znaków, którym jest m1. Dlatego uczeń i Marks mają relację „ma-a”. Obiekt Marks może istnieć bez obiektu studenta. Dlatego jest to agregacja.
Co to jest kompozycja w Javie?
Kompozycja to rodzaj skojarzenia. Jest to specyficzna forma agregacji, która zakłada własność. Załóżmy, że istnieją dwie klasy zwane klasami A i B. Jeśli obiekt klasy B nie może istnieć, jeśli obiekt klasy A zostanie zniszczony, to jest to kompozycja. Książka składa się z wielu stron. Jeśli książka zostanie zniszczona, strony również zniszczą. Obiekty strony nie mogą istnieć bez obiektu książki. Zapoznaj się z poniższym programem.
Rysunek 03: Klasa w klasie
Rysunek 04: Klasa szkolna
Rysunek 05: Główny program do opisu kompozycji
Zgodnie z powyższym programem Classroom ma dwie właściwości: name i numOfStudents. Szkoła to zbiór obiektów klasowych. W metodzie głównej tworzone są dwa obiekty Classroom. Te są dodawane do „sal lekcyjnych”. Te „sale lekcyjne” są przekazywane do obiektu szkolnego. Na koniec nazwa klasy i liczba uczniów są drukowane poprzez iterację w kolekcji. Jeśli obiekt szkoły zostanie zniszczony, obiekty Classroom również zostaną zniszczone. To jest przykład kompozycji. Zawiera również relację „ma-a”, a także oznacza własność.
Jaki jest związek między agregacją a kompozycją w języku Java?
Agregacja i kompozycja to dwa typy asocjacji, a kompozycja to wyspecjalizowany typ agregacji. Kompozycja to podzbiór Agregacja
Jaka jest różnica między agregacją a kompozycją w Javie?
Porównaj środek artykułu przed tabelą
Agregacja a kompozycja w Javie |
|
Agregacja to powiązanie między dwoma obiektami, które opisuje relację „ma”. | Kompozycja to bardziej specyficzny rodzaj agregacji, który zakłada własność. |
Stosowanie | |
Agregacja jest używana, gdy jeden obiekt używa innego obiektu. | Kompozycja jest używana, gdy jeden obiekt jest właścicielem innego obiektu. |
Wpływ na obiekty | |
W sumie zniszczenie obiektu będącego właścicielem nie wpłynie na obiekt zawierający. | W kompozycji zniszczenie obiektu będącego właścicielem wpłynie na obiekt zawierający. |
Podsumowanie - Agregacja a kompozycja w Javie
Agregacja i kompozycja to dwie koncepcje w OOP. Relacja „ma-a” opisuje, że jeden obiekt może używać innego obiektu. Agregacja to powiązanie między dwoma obiektami, które opisuje relację „ma-a”. Kompozycja to bardziej specyficzny rodzaj agregacji, który zakłada własność. Różnica między agregacją a kompozycją w Javie polega na tym, że jeśli obiekt zawarty może istnieć bez istnienia obiektu będącego właścicielem, jest to agregacja, a jeśli obiekt zawarty nie może istnieć bez istnienia obiektu będącego właścicielem, jest to kompozycja.