Forskjellen mellom aggregering og sammensetning i Java

Nøkkelforskjell - Aggregasjon vs sammensetning i Java

Aggregasjon er en forening mellom to objekter som beskriver forholdet "has-a". Sammensetningen er den mer spesifikke typen aggregering som innebærer eierskap. De nøkkelforskjell mellom aggregering og sammensetning i Java er det, hvis det inneholdt objektet kan eksistere uten eksistensen av eieobjektet, er det en aggregering, og hvis den inneholdte objektet ikke kan eksistere uten eksistensen av eieobjektet, er det en sammensetning.

Objektorientert programmering (OOP) er et stort paradigme i programvareutvikling. Det brukes til å modellere programvaren ved hjelp av objekter. Objektene er opprettet ved hjelp av klasser. En klasse består av egenskaper og metoder. Det finnes flere objekter i programvare. Hver gjenstand samarbeider med hverandre ved å sende meldinger. Forholdet mellom to objekter er kjent som en forening. Både aggregering og sammensetning er to typer assosiasjon. Forholdet "har-a" beskriver at ett objekt kan bruke et annet objekt. Samling og sammensetning kan implementeres i OOP-støttende språk. Hvis den inneholdte gjenstanden kan eksistere uten eksistensen av eieobjektet, er sammenhengen mellom de to objektene en aggregering. Hvis den inneholdte objektet ikke kan eksistere uten eksistensen av eierskapet, er sammenhengen mellom de to objektene en sammensetning.

INNHOLD

1. Oversikt og nøkkelforskjell
2. Hva er Aggregation i Java
3. Hva er komposisjon i Java
4. Likheter mellom aggregering og sammensetning i Java
5. Side ved side-sammenligning - Aggregasjon vs Komposisjon i Java i tabellform
6. Sammendrag

Hva er Aggregation i Java?

Aggregasjon er en type forening. Hvis en klasse har en entitetsreferanse, er den kjent som aggregering. Aggregasjon representerer har-et forhold. Et studentobjekt kan ha egenskaper som student_id, navn, adresse. Dette objektet kan også ha en annen objekt som heter adresse med egen informasjon som by, stat, land. I denne situasjonen har studenten en entitetsreferansadresse. Det er et "has-a" forhold.

Figur 01: Merkeklasse

Figur 02: Hovedprogram for å beskrive aggregering

I henhold til det ovennevnte programmet består klassemerket av tre egenskaper som er matematikk, engelsk og vitenskapsmerker. Student har et objekt av Marks. Den har egne egenskaper som er karakterer av matte, engelsk og vitenskap. I hovedmetoden er det opprettet et objekt med Marks, og markeringsverdier er tildelt. Studentobjektet som er s1 kan bruke markørobjektet som er m1. Derfor har Student og Marker "has-a" forholdet. Marks-objektet kan eksistere uten studentobjektet. Derfor er det en aggregering.

Hva er komposisjon i Java?

Sammensetning er en type forening. Det er en spesifikk form for aggregering som innebærer eierskap. Anta at det er to klasser kalt klasse A og B. Hvis objektet til klasse B ikke kan eksistere hvis objektet til klasse A blir ødelagt, så er det en sammensetning. En bok består av mange sider. Hvis boken blir ødelagt, vil sidene også ødelegge. Sideobjektene kan ikke eksistere uten bokobjektet. Se underprogrammet nedenfor.

Figur 03: Klasseromsklasse

Figur 04: Skoleklasse

Figur 05: Hovedprogram for å beskrive sammensetningen

I henhold til det ovennevnte programmet har klasserommet to egenskaper som er navn og numOfStudents. Skolen er en samling klasseromobjekter. I hovedmetoden blir to klasseromobjekter opprettet. De legges til 'klasserom'. Disse "klasseromene" sendes til skoleobjektet. Endelig skrives klasseromens navn og antall studenter ut av iterering gjennom samlingen. Hvis Skoleobjektet blir ødelagt, vil klasserommet gjenstander også ødelegge. Dette er et eksempel på sammensetning. Den inneholder også "has-a" -forholdet og innebærer også eierskap.

Hva er forholdet mellom aggregering og sammensetning i Java?

  • Sammensetning og sammensetning er to typer sammensetning og sammensetning er en spesialisert type aggregering. Sammensetning er en delmengde av aggregering.

Hva er forskjellen mellom aggregering og sammensetning i Java?

Aggregasjon vs Komposisjon i Java

Aggregasjon er en tilknytning mellom to objekter som beskriver "har et" forhold. Sammensetning er en mer spesifikk type aggregering som innebærer eierskap.
 bruk
Samling brukes når et objekt bruker en annen gjenstand. Sammensetning brukes når en gjenstand eier et annet objekt.
Påvirker objekter
Sammenslåing vil ikke ødelegge eierobjektet den inneholdende gjenstanden. I sammensetning vil ødeleggelse av eiersobjektet påvirke den inneholdende gjenstanden.

Sammendrag - Aggregasjon vs sammensetning i Java

Sammensetning og sammensetning er to konsepter i OOP. Forholdet "har-a" beskriver at ett objekt kan bruke et annet objekt. Aggregasjon er en forening mellom to objekter som beskriver forholdet "has-a". Sammensetning er en mer spesifikk type aggregering som innebærer eierskap. Forskjellen mellom aggregering og sammensetning i Java er at hvis den inneholdte gjenstanden kan eksistere uten eksistensen av eieobjektet, er det en aggregering, og hvis den inneholdte gjenstanden ikke kan eksistere uten eksistensen av eieobjektet, er det en sammensetning.

Henvisning:

1. "Forening, sammensetning og aggregering i Java." GeeksforGeeks, 8. februar 2018. Tilgjengelig her 
2. "Aggregasjon i Java - Javatpoint." Java Point. Tilgjengelig her