Čo je Asociácia v Jave a prečo ju potrebujete?



Tento článok o asociácii v Jave vám pomôže pochopiť, ako nadviazať spojenie medzi dvoma triedami prostredníctvom ich objektov pri kódovaní v Jave

Ako nadväzujete spojenie medzi dvoma triedami, keď píšete a Java program ? Je to jednoduché. Môžete využiť koncept nazývaný asociácia. Znie to zaujímavo, že? V tomto článku sa pozrime na pridruženie podrobne.

rozdiel medzi kuchárom a bábkou

V tomto článku sa diskutuje o týchto témach:





Čo je to Asociácia?

Asociácia v Jave je spojenie alebo vzťah medzi dvoma samostatnými triedy ktoré sú zriadené prostredníctvom ich predmety . Asociačný vzťah naznačuje, ako sa objekty navzájom poznajú a ako navzájom využívajú svoje funkcie. Môže to byť jedna k jednej, z jednej na veľa, z mnohých na jednu a z mnohých na veľa.

Združenie v Jave - Edureka



  • Napríklad,osoba môže mať iba jeden pas. Toto je ' jeden na jedného ”Vzťah.
  • Ak hovoríme o asociácii medzi bankou a zamestnancom, banka môže mať veľa zamestnancov, takže ide o „ jedna k mnohým ”Vzťah.
  • Podobne každé mesto existuje presne v jednom štáte, ale štát môže mať veľa miest, čo je „ mnoho-k-jednému ”Vzťah.
  • Na záver, keď hovoríme o asociácii medzi učiteľom a študentom, k jednému učiteľovi môže byť pridružených viac študentov a jeden študent môže byť tiež pridružený k viacerým učiteľom, ale oboch je možné vytvárať alebo mazať nezávisle. Toto je ' veľa k mnohým ”Vzťah.

Poďme si predstaviť asociáciu na príklade.

balík MyPackage import java.util. * class CityClass {private String cityName public String getCityName () {return cityName} public void setCityName (String cityName) {this.cityName = cityName} @Override public String toString () {return cityName}} class Štát {private String stateName Zoznam miest verejný String getStateName () {return stateName} public void setStateName (String stateName) {this.stateName = stateName} public List getCities () {return citys} public void setState (List citys) {this.citys = citys}} public class AssociationExample {public static void main (String [] args) {State state = new State () state.setStateName ('California') CityClass city = new CityClass () city.setCityName ('Los Angeles') CityClass city2 = nový CityClass () city2.setCityName ('San Diago') Zoznam empList = nový ArrayList () empList.add (mesto) empList.add (city2) state.setState (empList) System.out.println (state.getCities) () + 'sú mestá v štáte' + state.getStateName ())}}

Výkon:

[Los Angeles, San Diago] sú mestá v štáte Kalifornia



Ako vidíte, v tomto príklade programu sú dve triedy, a to uvádza a Mestá. Tieto dve samostatné triedy sú spojené prostredníctvom svojich Predmety . Navyše, každé mesto existuje presne v jednom štáte, ale štát môže mať veľa miest, preto sa hovorí, že ide o vzťah „medzi dvoma“. Dôležité je, že asociácia v Jave má dve špeciálne formy. Pozrime sa na ne.

Dve formy združenia

Zloženie a Agregácia sú dve špeciálne formy združenia. Pozrime sa na ne pomocou príkladu.

ako urobiť varovanie v javascript

Zloženie

Je toTypu „patrí“združenie. Znamená to jednoducho, že jeden z objektov je logicky väčšia štruktúra, ktorá obsahuje druhý objekt. Inými slovami, je súčasťou alebo členom väčšieho objektu. Alternatívne sa často nazýva a Vzťah „má-a“ (na rozdiel od vzťahu „je-a“, ktorý je ).

Prenapríklad budova má izbu, alebo inými slovami, miestnosť patrí k budove. Zloženie je silný druh vzťahu „has-a“, pretože životný cyklus predmetov je viazaný. Znamená to, že ak zničíme objekt vlastníka, zničia sa s ním aj jeho členovia. Napríklad, ak je budova zničená, je zničená aj miestnosť v našom predchádzajúcom príklade. Nezabudnite však, že to neznamená, že obsahujúci objekt nemôže existovať bez ktorejkoľvek z jeho častí. Napríklad, ak zbúrame všetky miestnosti v budove, budova bude stále existovať.

Agregácia

Agregácia je tiež vzťahom typu „má“, ale čo ho odlišuje od kompozície, je to, že životné cykly objektov nie sú viazané. B oth záznamy môžu prežiť individuálne čo znamená, že ukončenie jednej entity nebude mať vplyv na druhú entitu. Oba môžu existovať nezávisle na sebe. Preto sa často označuje ako týždenná asociácia.

Zoberme si príklad hráča a tímu. Hráč, ktorý je súčasťou tímu, môže existovať, aj keď tím zanikne.Hlavným dôvodom, prečo potrebujete agregáciu, je zachovať opätovnú použiteľnosť kódu.

čo je funkcia v sql

Týmto sa dostávame na koniec tohto článku, kde sme sa dozvedeli o asociácii v .

Ak sa vám zdá tento článok o „Asociácii v Jave“ relevantný, pozrite si dôveryhodná online vzdelávacia spoločnosť so sieťou viac ako 250 000 spokojných študentov rozmiestnených po celom svete. Ak narazíte na akékoľvek otázky, neváhajte sa ich opýtať v sekcii komentárov „Asociácia v Jave“ a náš tím vám rád odpovie.