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:
Unu la unu
Unul la mulți
Mulți la unu
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:
Aceasta este forma specială de asociere în care:
lungimea matricei în javascript
Aceasta reprezintă o relație cu o relație.
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.