Verschil Tussen Aggregatie En Compositie In Java

Inhoudsopgave:

Verschil Tussen Aggregatie En Compositie In Java
Verschil Tussen Aggregatie En Compositie In Java

Video: Verschil Tussen Aggregatie En Compositie In Java

Video: Verschil Tussen Aggregatie En Compositie In Java
Video: Wat is compositie? 2024, Mei
Anonim

Belangrijkste verschil - Aggregatie versus samenstelling in Java

Aggregatie is een associatie tussen twee objecten die de "has-a" -relatie beschrijft. De samenstelling is het meer specifieke type aggregatie dat eigendom impliceert. Het belangrijkste verschil tussen aggregatie en compositie in Java is dat, als het ingesloten object kan bestaan zonder het bestaan van het object dat het bezit, het een aggregatie is, en als het ingesloten object niet kan bestaan zonder het bestaan van het object dat het bezit, het een compositie is.

Object-Oriented Programming (OOP) is een belangrijk paradigma in softwareontwikkeling. Het wordt gebruikt om de software te modelleren met behulp van objecten. De objecten worden gemaakt met klassen. Een klasse bestaat uit eigenschappen en methoden. Er zijn meerdere objecten in software. Elk object werkt met elkaar samen via het doorgeven van berichten. De relatie tussen twee objecten staat bekend als een associatie. Zowel aggregatie als compositie zijn twee soorten associaties. De "has-a" -relatie beschrijft dat het ene object een ander object kan gebruiken. Aggregatie en samenstelling kunnen worden geïmplementeerd in OOP-ondersteunende talen. Als het ingesloten object kan bestaan zonder het bestaan van het object dat de eigenaar is, dan is de associatie tussen die twee objecten een aggregatie. Als het ingesloten object niet kan bestaan zonder het bestaan van het object dat de eigenaar is,dan is de associatie tussen die twee objecten een compositie.

INHOUD

1. Overzicht en belangrijkste verschil

2. Wat is aggregatie in Java

3. Wat is compositie in Java

4. Overeenkomsten tussen aggregatie en compositie in Java

5. Vergelijking zij aan zij - Aggregatie versus compositie in Java in tabelvorm

6. Samenvatting

Wat is aggregatie in Java?

Aggregatie is een soort associatie. Als een klasse een entiteitsverwijzing heeft, staat deze bekend als aggregatie. Aggregatie vertegenwoordigt de heeft-een-relatie. Een Student-object kan eigenschappen hebben zoals student_id, naam, adres. Dit object kan ook een ander object hebben met de naam adres met zijn eigen informatie zoals stad, staat, land. In deze situatie heeft de student een referentieadres van de entiteit. Het is een "heeft-een" -relatie.

Verschil tussen aggregatie en compositie in Java
Verschil tussen aggregatie en compositie in Java

Figuur 01: Marks Class

Verschil tussen aggregatie en compositie in Java
Verschil tussen aggregatie en compositie in Java

Figuur 02: hoofdprogramma om aggregatie te beschrijven

Volgens het bovenstaande programma bestaan de class Marks uit drie eigenschappen die wiskunde, Engels en wetenschap zijn. De student heeft een object van Marks. Het heeft zijn eigen eigenschappen die kenmerkend zijn voor wiskunde, Engels en wetenschap. In de hoofdmethode wordt een object van Marks gemaakt en worden markeringswaarden toegewezen. Het studentobject dat s1 is, kan het markeringsobject m1 gebruiken. Daarom hebben de student en de cijfers de "heeft-een" -relatie. Het Marks-object kan bestaan zonder het Student-object. Daarom is het een aggregatie.

Wat is compositie in Java?

Compositie is een soort associatie. Het is een specifieke vorm van aggregatie die eigendom impliceert. Stel dat er twee klassen zijn, klasse A en B. Als het object van klasse B niet kan bestaan als het object van klasse A wordt vernietigd, dan is dat een compositie. Een boek bestaat uit veel pagina's. Als het boek wordt vernietigd, worden de pagina's ook vernietigd. De pagina-objecten kunnen niet bestaan zonder het boekobject. Raadpleeg het onderstaande programma.

Verschil tussen aggregatie en compositie in Java Figure 03
Verschil tussen aggregatie en compositie in Java Figure 03

Figuur 03: klaslokaal

Verschil tussen aggregatie en compositie in Java Figure 04
Verschil tussen aggregatie en compositie in Java Figure 04

Figuur 04: Schoolklas

Belangrijkste verschil tussen aggregatie en compositie in Java
Belangrijkste verschil tussen aggregatie en compositie in Java

Figuur 05: Hoofdprogramma om compositie te beschrijven

Volgens het bovenstaande programma heeft de Classroom twee eigenschappen: name en numOfStudents. De school is een verzameling objecten uit de klas. In de hoofdmethode worden twee Classroom-objecten gemaakt. Die worden toegevoegd aan 'klaslokalen'. Deze 'klaslokalen' worden doorgegeven aan het schoolobject. Ten slotte worden de klasnaam en het aantal leerlingen afgedrukt door de collectie te herhalen. Als het School-object wordt vernietigd, worden de Classroom-objecten ook vernietigd. Dit is een voorbeeld van compositie. Het bevat ook de 'heeft-een'-relatie en impliceert ook eigendom.

Wat is de relatie tussen aggregatie en compositie in Java?

Aggregatie en compositie zijn twee soorten associatie en compositie is een gespecialiseerd type aggregatie. Compositie is een subset van Aggregatie

Wat is het verschil tussen aggregatie en compositie in Java?

Diff Artikel Midden voor Tafel

Aggregatie versus compositie in Java

Aggregatie is een associatie tussen twee objecten die de "heeft een" -relatie beschrijft. Compositie is een meer specifiek type aggregatie dat eigendom impliceert.
Gebruik
Aggregatie wordt gebruikt wanneer een object een ander object gebruikt. Compositie wordt gebruikt wanneer een object eigenaar is van een ander object.
Invloed op objecten
Samengevoegd heeft het vernietigen van het object dat de eigenaar is, geen invloed op het object dat het bevat. Bij de compositie zal het vernietigen van het bezittende object het bevattende object beïnvloeden.

Samenvatting - Aggregatie versus compositie in Java

Aggregatie en compositie zijn twee concepten in OOP. De "has-a" -relatie beschrijft dat het ene object een ander object kan gebruiken. Aggregatie is een associatie tussen twee objecten die de "has-a" -relatie beschrijft. Compositie is een meer specifiek type aggregatie dat eigendom impliceert. Het verschil tussen aggregatie en compositie in Java is dat, als het ingesloten object kan bestaan zonder het bestaan van het bezittende object, het een aggregatie is en als het ingesloten object niet kan bestaan zonder het bestaan van het bezittende object, het een compositie is.

Aanbevolen: