Viskas, ką reikia žinoti, turi „Java“ ryšį

Šis straipsnis suteiks jums išsamių ir išsamių žinių apie „Turi ryšius java“ ir įvairius naudojimo būdus.

Turi santykius ir „Sąryšis“ yra du painiausi terminai. Šiame straipsnyje mes sutelksime dėmesį į šiuos parametrus:

iteratoriaus naudojimas java

Įvadas į „Java“ ryšį

Turi ryšių „Java“, kaip žinoma, kaip „Kompozicija“. Jis naudojamas pakartotiniam kodo naudojimui. Iš esmės tai reiškia, kad vienos klasės egzempliorius turi nuorodą į kitos klasės egzempliorių arba kitą tos pačios klasės egzempliorių. Šis ryšys padeda sumažinti kodo dubliavimą ir klaidas.





Kompozicija yra asociacijos forma. Asociacija yra žinoma kaip santykis tarp dviejų atskirų klasių, kurios yra įgaliotos per jų objektus. Asociacija gali būti tokia:

  1. Vienas prie vieno



  2. Vienas prie daugelio

  3. Daugelis į vieną

  4. Daug daug



OOP (Object Oriented Programming) programoje „Object“ bendrauja su kitu objektu, kad galėtų naudotis visomis to objekto teikiamomis paslaugomis ir funkcijomis.

Asociacija

Čia yra Asociacijos įgyvendinimo pavyzdys.

importuoti java.io. * klasę Bankas {privačios eilutės pavadinimas bankas (eilutės pavadinimas) {this.name = vardas} viešoji eilutė getBankName () {grąžinti šį.pavadinimas}} klasė Darbuotojas {privačios eilutės pavadinimas Darbuotojas (eilutės pavadinimas) {tai. vardas = vardas} viešoji eilutė getEmployeeName () {grąžinti šį.pavadinimas}} klasės asociacija {public static void main (eilutė [] argumentai) {bankas b = naujas bankas ('ašis') darbuotojas e = naujas darbuotojas ('Himanshi') System.out.println (e.getEmployeeName () + 'yra' + b.getBankName ()}}}} darbuotojas

Išvestis:

has-a-relationship-in-java

Tai yra speciali asociacijos forma, kai:

  1. Tai reiškia „Has-a-relationship“.

  2. Tai žinoma kaip vienakryptė asociacija (vienpusis ryšys). Pavyzdžiui, katedroje gali būti mokytojai, bet atvirkščiai, tai nėra tiesa, taigi, vienakryptis.

Dabar pakalbėkime apie kompoziciją

koks skirtumas tarp jquery ir javascript

Kompozicija yra ribota forma, kai du objektai yra labai priklausomi vienas nuo kito. Kai tarp dviejų esybių yra sudėtis, sudarytieji negali meluoti be kito subjekto.

Pateikiame bibliotekos pavyzdį, rodantį kompozicijos sampratą

importuoti java.io. * importuoti java.util. * klasės knygą {public Stygos pavadinimas public Styginių autorių knyga (Styginių pavadinimas, Styginių autorius) {this.title = title this.author = author}} klasės biblioteka {private final Knygų sąrašas (Pateikite knygų sąrašą) {this.books = books} public list getTotalBooksInLibrary () {return books}} class edureka {public static void main (String [] args) {Book b2 = new Book ('Thinking Java', 'Brua E' ) B3 knyga = nauja knyga ('Java: pilna nuoroda', 'Herb S') Knygų sąrašas = naujas ArrayList () books.add (b2) books.add (b3) bibliotekos biblioteka = nauja biblioteka (knygos) sąrašas bks = biblioteka .getTotalBooksInLibrary () skirtas (Book bk: bks) {System.out.println ('Pavadinimas:' + bk.title + 'ir' + 'Autorius:' + bk.author)}}}

Išvestis:

Vienas iš pagrindinių OOPS privalumų yra tai, kad galime pakartotinai naudoti kodą. Yra du būdai, kuriais galime pakartotinai naudoti kodąpaveldėjimas arba objekto sudėtis.

Kompozicijos ir paveldėjimo palyginimas: santykiai

  • Kompozicijoje lengviau pakeisti klasę, nei paveldint.

  • Paveldėjimas yra statinis, o kompozicija - dinaminis.

  • Klasės paveldėjimas apibrėžiamas kompiliavimo metu, o objekto sudėtis - vykdymo metu.

  • Daiktų kompozicijoje neva vidinės detalės neturėtų būti atskleistos viena kitai ir jos sąveikauja savo viešosiomis sąsajomis, tuo tarpu „Paveldėdamas“ tai atskleidžia tiek visuomenę, tiek saugomus bazinės klasės narius.

  • Sudėtyje prieigą galima riboti, o objekto sudėtyje nėra prieigos kontrolės.

  • Paveldėjime jis nutraukia inkapsuliaciją, pateikdamas poklasį išsamesnei informacijai apie savo tėvų įgyvendinimą, o „Object Composition“ jis nenutraukia inkapsuliacijos, nes prie objektų yra visiškai prieinama per jų sąsajas.

  • Paveldėjimas suteikia kodo pakartotinį naudojimą, o objekto sudėtyje - atstovavimą asociacijoms.

1 pavyzdys:

class Operation {int square (int n) {return n * n}} class Circle {Operation op // aggregation double pi = 3.14 double area (int radius) {op = new Operation () int rsquare = op.square (radius) // kodo pakartotinis naudojimas (ty perduoda metodo iškvietimą). grąžinti pi * rsquare} public static void main (String args []) {Circle c = new Circle () double result = c.area (5) System.out.println (result)}}

Išvestis:

2 pavyzdys:

klasės namas {Virtuvė k = nauja virtuvė () // daugiau namų klasės kodo} Klasės virtuvė {// virtuvės klasės kodas}

Jei namas bus sunaikintas, bus sunaikinta ir virtuvė. Tai vadinama kompozicija, kai dvi esybės yra priklausomos viena nuo kitos. Standartinė klasė (virtuvė) negalėtų egzistuoti be konteinerių klasės (namas).

Tai pasiekėme šio straipsnio „Turi ryšį Java“ pabaigoje. Iš esmės sudėties atveju klasė gali pakartotinai panaudoti klasės funkcionalumą sukurdama nuorodą į klasės objektą, kurį ji nori naudoti dar kartą. Jis žinomas kaip specialus agregavimo atvejis.

sujungti rūšiuoti c ++ algoritmą

C Heck out sukūrė patikima internetinė mokymosi įmonė „Edureka“, turinti daugiau nei 250 000 patenkintų besimokančiųjų tinklą visame pasaulyje. „Edureka“ „Java J2EE“ ir SOA mokymo ir sertifikavimo kursai yra skirti studentams ir specialistams, norintiems būti „Java“ kūrėjais.

Turite mums klausimą? Prašau tai paminėti šio tinklaraščio „Turi ryšius„ Java “komentarų skyriuje ir mes kuo greičiau susisieksime su jumis.