Tot ce trebuie să știți despre are o relație în Java



Acest articol vă va oferi o cunoaștere detaliată și cuprinzătoare despre Are o relație în java și diversele sale utilizări.

Are o relație în și Is a Relationship sunt doi dintre cei mai confuzi termeni. În acest articol, ne vom concentra pe următorii parametri:

ce face .innerhtml

O Introducere în Are o relație în Java

Are o relație în Java despre care se știe că este Compoziție. Este folosit pentru reutilizarea codului. Practic, înseamnă că o instanță a unei clase are o referință la instanța unei alte clase sau a altei instanțe din aceeași clasă. Această relație ajută la minimizarea duplicării codului, precum și a erorilor.





O compoziție este o formă de asociere. Asocierea este cunoscută ca relația dintre două clase separate care sunt autorizate prin obiectele lor. Asocierea poate avea forma:

  1. Unu la unu



  2. Unul la mulți

  3. Mulți la unu

  4. Mulți-la-mulți



În OOP (Object Oriented Programming), Object comunică cu un alt obiect pentru a utiliza toate serviciile și funcționalitățile oferite de acel obiect.

Asociere

Iată un exemplu de implementare a Asociației.

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} public String getEmployeeName () {return this.name}} class Association {public static void main (String [] args) {Bank b = new Bank ('Axis') Employee e = new Employee ('Himanshi') System.out.println (e.getEmployeeName () + 'este un angajat al' + b.getBankName ())}}

Ieșire:

has-a-relationship-in-java

Aceasta este forma specială de asociere în care:

lungimea matricei în javascript
  1. Aceasta reprezintă o relație cu o relație.

  2. Este cunoscută sub numele de asociere unidirecțională (o relație unidirecțională) De exemplu, departamentul poate avea profesori, dar invers nu este adevărat și, prin urmare, este de natură unidirecțională.

Acum să vorbim despre Compoziție

Compoziția este forma restricționată în care două obiecte sunt extrem de dependente unul de celălalt. Când există compoziție între cele două entități, compusul nu poate sta fără o altă entitate.

Iată exemplul bibliotecii pentru a arăta conceptul de compoziție

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}} class Library {private final List books Books (Listează cărți) {this.books = books} public List getTotalBooksInLibrary () {return books}} class edureka {public static void main (String [] args) {Book b2 = new Book ('Thinking Java', 'Brua E' ) Cartea b3 = Cartea nouă („Java: Referință completă”, „Herb S”) Lista cărților = ArrayList nou () books.add (b2) books.add (b3) Biblioteca bibliotecă = Biblioteca nouă (cărți) Lista bks = bibliotecă .getTotalBooksInLibrary () pentru (Book bk: bks) {System.out.println ('Title:' + bk.title + 'și' + 'Author:' + bk.author)}}}

Ieșire:

Unul dintre principalele avantaje ale OOPS este că putem reutiliza codul. Există două modalități prin care putem reutiliza codul în care este implementatămoștenire sau prin compoziția obiectului.

Compararea compoziției și a moștenirii: relație

  • În compoziție este mai ușor să schimbi clasa decât în ​​moștenire.

  • Moștenirea este legarea statică, în timp ce compoziția este legarea dinamică.

  • Moștenirea clasei este definită în timpul compilării, în timp ce compoziția obiectului este definită în timpul rulării.

  • În compoziția obiectului, detaliile interne nu ar trebui să se expună unul față de altul și interacționează prin interfețele lor publice, în timp ce, în moștenire, expune atât publicul, cât și membrii protejați ai clasei de bază.

  • În Compoziție, accesul poate fi restricționat în timp ce, În compoziția obiectelor, nu există control de acces.

    sortare c ++ stl
  • În Moștenire, rupe încapsularea expunând o subclasă la detaliile implementării părintelui său, în timp ce, în Compoziția obiectelor, nu întrerupe încapsularea, deoarece obiectele sunt accesate complet prin interfețele lor.

  • În Moștenire, acesta oferă reutilizarea codului, în timp ce, În compoziția obiectelor, permite reprezentarea asociațiilor.

Exemplul 1:

clasă Operație {int pătrat (int n) {return n * n}} clasă Cerc {Operație op // agregare dublă pi = 3,14 zonă dublă (raza int) {op = operație nouă () int rsquare = op.square (radius) // reutilizarea codului (adică delegă apelul metodei). return pi * rsquare} public static void main (String args []) {Circle c = new Circle () double result = c.area (5) System.out.println (result)}}

Ieșire:

Exemplul 2:

clasa Casa {Bucătărie k = Bucătărie nouă () // mai multe coduri pentru clasa casei} Clasă Bucătărie {// codul clasei de bucătărie}

Dacă casa va fi distrusă, și bucătăria va fi distrusă. Aceasta este cunoscută sub numele de compoziție atunci când două entități sunt dependente una de cealaltă. Clasa de referință (Bucătărie) nu ar putea exista fără clasa de containere (Casa).

Cu aceasta, ajungem la sfârșitul acestui articol Are o relație în Java. Practic, în compoziție, o clasă poate reutiliza funcționalitatea clasei prin crearea unei referințe la obiectul clasei pe care dorește să o reutilizeze. Este cunoscut sub numele de caz special de agregare.

C uită-te la de Edureka, o companie de învățare online de încredere, cu o rețea de peste 250.000 de elevi mulțumiți răspândiți pe tot globul. Cursul de formare și certificare Java J2EE și SOA al Edureka este conceput pentru studenți și profesioniști care doresc să fie dezvoltator Java.

Ai o întrebare pentru noi? Vă rugăm să o menționați în secțiunea de comentarii a acestui blog „Are o relație în Java” și vă vom contacta cât mai curând posibil.