Kas ir asociācija Java un kāpēc tā jums nepieciešama?



Šis raksts par asociāciju Java palīdzēs jums saprast, kā izveidot kodu savienojumu starp divām klasēm, kodējot Java

Kā jūs izveidojat saikni starp divām klasēm, rakstot a Java programma ? Tas ir vienkārši. Jūs varat izmantot jēdzienu, ko sauc par asociāciju. Izklausās interesanti vai ne? Šajā rakstā apskatīsim asociāciju detalizēti.

Šajā rakstā aplūkotās tēmas ir:





Kas ir asociācija?

Asociācija Java ir savienojums vai attiecības starp diviem atsevišķiem klases kas ir izveidoti caur viņu objektiem . Asociācijas attiecības norāda, kā objekti pazīst viens otru un kā viņi izmanto viens otra funkcionalitāti. Tas var būt viens pret vienu, viens pret daudziem, daudzi pret vienu un daudzi pret daudziem.

Asociācija Java - Edureka



  • Piemēram,cilvēkam var būt tikai viena pase. Tas ir viens pret vienu ”Attiecībām.
  • Ja mēs runājam par asociāciju starp banku un darbinieku, bankā var būt daudz darbinieku, tāpēc tas ir viens pret daudziem ”Attiecībām.
  • Tāpat katra pilsēta pastāv tieši vienā štatā, bet valstij var būt daudzas pilsētas, kas ir daudzi pret vienu ”Attiecībām.
  • Visbeidzot, ja mēs runājam par asociāciju starp skolotāju un studentu, vairākus skolēnus var saistīt ar vienu skolotāju un vienu studentu var saistīt arī ar vairākiem skolotājiem, bet abus var izveidot vai dzēst neatkarīgi. Tas ir ' daudzi pret daudziem ”Attiecībām.

Sapratīsim par asociāciju ar piemēru.

atšķirība starp šefpavāru un leļļu
pakete MyPackage import java.util. * klase CityClass {privātā virkne pilsētas nosaukums publiskā virkne getCityName () {atgriešanās pilsētas nosaukums} public void setCityName (virknes pilsētas nosaukums) {this.cityName = pilsētas nosaukums} @ pārvērtēt publisko virkni toString () {return pilsētasName}} klase Stāvoklis {private String stateName List citys public String getStateName () {return stateName} public void setStateName (String stateName) {this.stateName = stateName} public List getCities () {return citys} public void setState (Pilsētu saraksts) {this.citys = citys}} public class AssociationPiemērs {public static void main (String [] args) {State state = new State () state.setStateName ('California') CityClass city = new CityClass () city.setCityName ('Los Angeles') CityClass city2 = new CityClass () city2.setCityName ('San Diago') saraksts empList = new ArrayList () empList.add (pilsēta) empList.add (city2) state.setState (empList) System.out.println (state.getCities () + 'ir ​​pilsētas štatā' + state.getStateName ())}}

Izeja:

[Losandželosa, San Diago] ir pilsētas Kalifornijas štatā



Kā redzat, šajā programmas piemērā ir divas klases, proti, norāda un pilsētām. Šīs divas atsevišķās klases ir saistītas ar viņu starpniecību Objekti . Turklāt katra pilsēta pastāv tieši vienā štatā, bet valstij var būt daudzas pilsētas, tāpēc arī termins “daudzi pret vienu” ir attiecība. Svarīgi ir tas, ka Java asociācijai ir divas īpašas formas. Pārbaudīsim tos.

Divas asociācijas formas

Sastāvs un Apkopošana ir divas īpašas asociācijas formas. Pārbaudīsim tos, izmantojot piemēru.

kā pārveidot dubultu par int

Sastāvs

Tas ir“Pieder pie” veidaasociācija. Tas vienkārši nozīmē, ka viens no objektiem ir loģiski lielāka struktūra, kurā ir otrs objekts. Citiem vārdiem sakot, tā ir lielāka objekta daļa vai loceklis. Alternatīvi to bieži sauc par a “Ir-ir” attiecības (pretstatā “ir-a” attiecībām, kas ir ).

Priekšpiemēram, ēkā ir istaba vai, citiem vārdiem sakot, istaba pieder ēkai. Sastāvs ir spēcīga veida “ir-ir” attiecības, jo objektu dzīves cikli ir saistīti. Tas nozīmē, ka, ja mēs iznīcināsim īpašnieka objektu, arī tā dalībnieki tiks iznīcināti ar to. Piemēram, ja ēka tiek sagrauta, arī mūsu iepriekšējā piemērā tiek iznīcināta telpa. Bet ņemiet vērā, ka tas nenozīmē, ka saturošais objekts nevar pastāvēt bez tā daļām. Piemēram, ja mēs nojauksim visas telpas ēkas iekšienē, ēka joprojām pastāvēs.

Apkopošana

Apkopošana ir arī “ir-ir” attiecība, taču, kas to atšķir no kompozīcijas, objektu dzīves cikli nav saistīti. B citi ieraksti var izdzīvot atsevišķi tas nozīmē, ka vienas vienības izbeigšana neietekmēs otru vienību. Viņi abi var pastāvēt neatkarīgi viens no otra. Tāpēc to bieži dēvē par nedēļas asociāciju.

Ņemsim piemēru no spēlētāja un komandas. Spēlētājs, kurš ir komandas sastāvdaļa, var pastāvēt pat tad, kad komanda beidz pastāvēt.Galvenais iemesls, kāpēc jums nepieciešama apkopošana, ir uzturēt koda atkārtotu lietošanu.

Tādējādi mēs nonākam līdz šī raksta beigām, kur mēs esam uzzinājuši par asociāciju .

Ja jums šis raksts par tēmu “Asociācija Java” ir noderīgs, skatiet vietni uzticams tiešsaistes mācību uzņēmums ar vairāk nekā 250 000 apmierinātu izglītojamo tīklu visā pasaulē. Ja rodas kādi jautājumi, droši uzdodiet visus jautājumus komentāru sadaļā “Asociācija Java”, un mūsu komanda ar prieku atbildēs.