Sve što trebate znati o vezi ima Javu

Ovaj će vam članak pružiti detaljno i razumljivo znanje o vezi u Java-i i različitim primjenama.

Ima vezu u i Je li veza dva su zbunjujuća izraza. U ovom ćemo se članku usredotočiti na sljedeće parametre:

životni ciklus aktivnosti androida

Uvod u Ima veze u Javi

Ima odnos na Javi poznat kao Composition. Koristi se za ponovnu upotrebu koda. U osnovi to znači da instanca jedne klase ima referencu na instancu druge klase ili druge instance iste klase. Ovaj odnos pomaže minimizirati dupliciranje koda kao i grešaka.





Sastav je oblik udruživanja. Udruživanje je poznato kao odnos između dvije odvojene klase koje su autorizirane kroz njihove objekte. Udruženje može biti u obliku:

  1. Jedan na jedan



  2. Jedan prema mnogima

  3. Mnogo prema jednom

  4. Mnogo-mnogima



U OOP-u (objektno orijentirano programiranje), objekt komunicira s drugim objektom kako bi koristio sve usluge i funkcionalnosti koje pruža taj objekt.

Udruživanje

Evo primjera provedbe Udruge.

import java.io. * class Bank {private String name Bank (String name) {this.name = name} public String getBankName () {return this.name}} class Employee {private String name Employee (String name) {this. name = name} javni niz getEfficieeName () {return this.name}} Udruživanje klase {public static void main (String [] args) {Bank b = new Bank ('Axis') Employee e = new Employee ('Himanshi') System.out.println (e.getEfficieeName () + 'zaposlenik je' + b.getBankName ())}}

Izlaz:

has-a-relationship-in-java

Ovo je poseban oblik udruživanja u kojem:

  1. Ovo predstavlja odnos Has-a-odnos.

  2. Poznata je kao jednosmjerna asocijacija (jednosmjerna veza) Na primjer, odjel može imati nastavnike, ali obrnuto nije istina, a time i jednosmjerne prirode.

Sada razgovarajmo o sastavu

struktura podataka o redu čekanja u javi

Kompozicija je ograničeni oblik u kojem dva predmeta međusobno uvelike ovise. Kada između dva entiteta postoji sastav, sastavljeni ne može ležati bez drugog entiteta.

Evo primjera knjižnice za prikaz koncepta kompozicije

import java.io. * import java.util. * class Book {public String title public String author Book (String title, String author) {this.title = title this.author = author}} Biblioteka klase {privatni konačni Popis knjiga Biblioteka (Popis knjiga) {this.books = books} javni popis getTotalBooksInLibrary () {povratak knjiga}} class edureka {public static void main (String [] args) {Book b2 = new Book ('Thinking Java', 'Brua E' ) Knjiga b3 = nova knjiga ('Java: Potpuna referenca', 'Herb S') Popis knjiga = novi ArrayList () books.add (b2) books.add (b3) Biblioteka knjižnice = nova knjižnica (knjige) Popis bks = knjižnica .getTotalBooksInLibrary () za (Knjiga bk: bks) {System.out.println ('Naslov:' + bk.title + 'i' + 'Autor:' + bk.author)}}}

Izlaz:

Jedna od glavnih prednosti OOPS-a je mogućnost ponovnog korištenja koda. Postoje dva načina na koje možemo ponovno upotrijebiti kod za koji je implementirannasljeđivanjem ili prema sastavu predmeta.

Usporedba sastava i nasljeđivanja: odnos

  • U sastavu je lakše promijeniti klasu nego u nasljeđivanju.

  • Nasljeđivanje je statično vezanje, dok je sastav dinamičko vezanje.

  • Nasljeđivanje klase definirano je za vrijeme prevođenja, dok je sastav objekta definiran za vrijeme izvođenja.

  • U sastavu predmeta, unutarnji detalji ne bi trebali izlagati jedni druge i oni komuniciraju putem svojih javnih sučelja, dok, U nasljeđivanju, izlažu javnost i zaštićene članove osnovne klase.

  • U kompoziciji pristup može biti ograničen, dok u kompoziciji objekta nema kontrole pristupa.

  • U nasljeđivanju razbija enkapsulaciju izlažući potklasu detaljima implementacije svog roditelja, dok u Object Composition ne prekida enkapsulaciju jer se objektima u potpunosti pristupa preko njihovih sučelja.

  • U nasljeđivanju pruža ponovnu upotrebu koda, dok u sastavu predmeta omogućuje predstavljanje asocijacija.

Primjer 1:

klasa Operacija {int kvadrat (int n) {povratak n * n}} klasa Krug {Operacija op // agregacija double pi = 3,14 dvostruko područje (int radijus) {op = novo Operation () int rsquare = op.square (radijus) // ponovna upotreba koda (tj. delegira poziv metode). vrati pi * rsquare} javna statička praznina main (String args []) {Circle c = new Circle () double result = c.area (5) System.out.println (result)}}

Izlaz:

Primjer 2:

class House {Kuhinja k = nova Kuhinja () // više koda za house class} Razred Kuhinja {// kôd kuhinja class}

Ako kuća bude uništena, uništit će se i kuhinja. Ovo je poznato kao sastav kad su dva entiteta međusobno ovisna. Referentna klasa (kuhinja) ne bi mogla postojati bez klase kontejnera (kuća).

Ovim smo došli do kraja ovog članka Ima odnos u Javi. U osnovi, u sastavu, klasa može ponovno upotrijebiti funkcionalnost klase stvarajući referencu na objekt klase koju želi ponovno koristiti. Poznat je kao poseban slučaj agregacije.

duljina javascripta niza

C pakao Edureka, pouzdane tvrtke za internetsko učenje s mrežom od više od 250 000 zadovoljnih učenika raširenih širom svijeta. Edurekin tečaj za obuku i certificiranje Java J2EE i SOA dizajniran je za studente i profesionalce koji žele biti programer Java.

Imate pitanje za nas? Molimo vas da ga spominjete u odjeljku za komentare ovog bloga 'Ima veze na Javi' i javit ćemo vam se što je prije moguće.