Koondumise ja koostise erinevus Java-s

Peamine erinevus - liitmine vs. Koostis Java keeles

Agregeerimine on seos kahe objekti vahel, mis kirjeldab "on-a" suhet. Kompositsioon on spetsiifilisem liitmise tüüp, mis eeldab omandiõigust. võtme erinevus liitmise ja kompositsiooni vahel Java-s on see, kui sisalduv objekt saab eksisteerida ilma seda omavat objekti eksisteerimata, on see agregatsioon ja kui sisalduv objekt ei saa eksisteerida ilma seda omava objekti olemasoluta, on see kompositsioon.

Objektorienteeritud programmeerimine (OOP) on tarkvara arendamise peamine paradigma. Seda kasutatakse tarkvara modelleerimiseks objektide abil. Objektid luuakse klasside abil. Klass koosneb omadustest ja meetoditest. Tarkvaras on mitu objekti. Iga objekt teeb üksteisega koostööd sõnumi edastamise kaudu. Kahe objekti suhet tuntakse assotsiatsioonina. Nii liitmine kui ka koosseis on kahte tüüpi seosed. Suhe „has-a” kirjeldab, et üks objekt saab kasutada teist objekti. Liitmist ja koostist saab rakendada OOP-toetavates keeltes. Kui sisalduv objekt võib eksisteerida ka ilma seda omavat objekti eksisteerimata, on nende kahe objekti vaheline seos liitmine. Kui sisalduv objekt ei saa eksisteerida ilma seda omavat objekti eksisteerimata, on nende kahe objekti vaheline seos kompositsioon.

SISU

1. Ülevaade ja peamised erinevused
2. Mis on koondamine Java-s
3. Mis on Java kompositsioon?
4. Javas koondamise ja kompositsiooni sarnasused
5. Kõrvuti võrdlus - koondamine vs kompositsioon Java-s tabelina
6. Kokkuvõte

Mis on Java koondamine?

Agregeerimine on teatud tüüpi ühendus. Kui klassil on olemi viide, nimetatakse seda liitmiseks. Koondumine tähistab suhet. Üliõpilasobjektil võivad olla omadused, näiteks õpilase_nimi, nimi, aadress. Sellel objektil võib olla ka mõni teine ​​objekt, mida nimetatakse aadressiks koos oma andmetega, näiteks linn, osariik, riik. Selles olukorras on õpilasel olemi viiteaadress. See on "on-a" suhe.

Joonis 01: märkide klass

Joonis 02: Agregeerimise kirjeldamise põhiprogramm

Ülaltoodud programmi kohaselt koosnevad klassi märgid kolmest omadusest, mis on matemaatika, inglise keele ja teaduse märgid. Õpilasel on Marksi objekt. Sellel on oma omadused, mis on matemaatika, inglise keele ja teaduse märgid. Põhimeetodi korral luuakse Marks objekt ja määratakse tähiste väärtused. Õpilasobjekt, mis on s1, saab kasutada objekti, mis on m1. Seetõttu on õpilasel ja Marksil suhe "olemas". Objekt Marks võib eksisteerida ka ilma õpilasobjektita. Seetõttu on see kokkuvõte.

Mis on Java kompositsioon??

Kompositsioon on teatud tüüpi assotsiatsioon. See on konkreetne liitmise vorm, mis eeldab omandiõigust. Oletame, et on kaks klassi, mida nimetatakse klassiks A ja B. Kui klassi B objekt ei saa eksisteerida, kui klassi A objekt hävitatakse, on see kompositsioon. Raamat koosneb paljudest lehekülgedest. Kui raamat hävitatakse, hävitatakse ka lehed. Leheobjektid ei saa eksisteerida ilma raamatuobjektita. Vaadake allolevat programmi.

Joonis 03: klassiruum

Joonis 04: kooliklass

Joonis 05: Põhiprogramm kompositsiooni kirjeldamiseks

Ülaltoodud programmi kohaselt on Klassiruumil kaks omadust, mis on nimi ja numOfStudents. Kool on klassiruumi objektide kollektsioon. Põhimeetodi korral luuakse kaks Klassiruumi objekti. Need lisatakse klassiruumidesse. Need “klassiruumid” antakse kooli objektile. Lõpuks trükitakse klassiruumi nimi ja õpilaste arv iteratsiooni abil kogu kaudu. Kui kooliobjekt hävitatakse, hävitatakse ka klassiruumiobjektid. See on näide kompositsioonist. See sisaldab ka suhet ja tähendab ka omandilist kuuluvust.

Milline on Java liitmise ja kompositsiooni suhe??

  • Agregeerimine ja kompositsioon on kahte tüüpi assotsieerumine ja kompositsioon on spetsiaalne agregatsiooni tüüp. Kompositsioon on liitmise alamhulk.

Mis vahe on Java koondamisel ja koostisel??

Koondamine vs kompositsioon Java-s

Agregeerimine on seos kahe objekti vahel, mis kirjeldab suhet "on". Koosseis on spetsiifilisem liitmise tüüp, mis eeldab omandiõigust.
 Kasutamine
Agregeerimist kasutatakse siis, kui üks objekt kasutab teist objekti. Kompositsiooni kasutatakse juhul, kui üks objekt omab teist objekti.
Mõju objektidele
Kokkuvõttes ei mõjuta omandiobjekti hävitamine sisaldavat objekti. Kompositsioonis mõjutab omandiobjekti hävitamine sisaldava objekti.

Kokkuvõte - koondamine vs. Koostis Java keeles

Agregeerimine ja kompositsioon on OOP-s kaks mõistet. Suhe „has-a” kirjeldab, et üks objekt saab kasutada teist objekti. Agregeerimine on seos kahe objekti vahel, mis kirjeldab "on-a" suhet. Koosseis on spetsiifilisem liitmise tüüp, mis eeldab omandiõigust. Javas on liitmise ja kompositsiooni erinevus selles, et kui sisalduv objekt võib eksisteerida ilma seda omavat objekti eksisteerimata, on see liitmine ja kui sisalduv objekt ei saa eksisteerida ilma seda omava objekti olemasoluta, on see kompositsioon.

Viide:

1. „Seostamine, koosseis ja koondamine Java-s”. GeeksforGeeks, 8. veebruar 2018. Saadaval siin 
2. “Koondamine Java-s - Javatpoint.” Java punkt. Saadaval siin