Alt hvad du behøver at vide om, har et forhold i Java



Denne artikel giver dig en detaljeret og forståelig viden om Har et forhold i java, og det er forskellige anvendelser.

Har et forhold i og er et forhold er to af de mest forvirrende udtryk. I denne artikel vil vi fokusere på følgende parametre:

android studio trin for trin

En introduktion til at have et forhold i Java

Har et forhold i Java er kendt for at være som komposition. Det bruges til genanvendelighed af kode. Dybest set betyder det, at en forekomst af den ene klasse har en henvisning til forekomsten af ​​en anden klasse eller den anden forekomst af den samme klasse. Dette forhold hjælper med at minimere duplikering af kode såvel som bugs.





En sammensætning er en form for forening. Forening er kendt som forholdet mellem to separate klasser, der er godkendt gennem deres objekter. Forening kan have formen:

  1. En til en



  2. En-til-mange

  3. Mange-til-en

  4. Mange-til-mange



I OOP (Object Oriented Programming) kommunikerer Object med et andet objekt for at bruge alle de tjenester og funktionaliteter, der leveres af objektet.

Forening

Her er et eksempel på implementeringen af ​​foreningen.

import java.io. * klasse Bank {privat String name Bank (String name) {this.name = name} public String getBankName () {return this.name}} class Medarbejder {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') Medarbejder e = ny medarbejder ('Himanshi') System.out.println (e.getEmployeeName () + 'er medarbejder hos' + b.getBankName ())}}

Produktion:

has-a-relationship-in-java

Dette er den særlige tilknytningsform, hvor:

  1. Dette repræsenterer Has-a-relationship.

  2. Det er kendt som en envejsforening (en envejsforbindelse) F.eks. Kan afdelingen have lærere, men omvendt er det ikke sandt og er derfor ensrettet.

Lad os nu tale om komposition

Kompositionen er den begrænsede form, hvor to objekter er enormt afhængige af hinanden. Når der findes sammensætning mellem de to enheder, kan den sammensatte ikke ligge uden en anden enhed.

hvordan man analyserer xml i java

Her er eksemplet på biblioteket til visning af begrebet komposition

import java.io. * import java.util. * klasse Bog {offentlig Stringtitel offentlig Stringforfatter Bog (Stringtitel, Stringforfatter) {this.title = titel this.author = author}} klasse Bibliotek {privat endelig Listebøger Bibliotek (Listebøger) {this.books = books} public List getTotalBooksInLibrary () {return books}} class edureka {public static void main (String [] args) {Book b2 = new Book ('Thinking Java', 'Brua E' ) Bog b3 = ny bog ('Java: Komplet reference', 'Herb S') Listebøger = ny ArrayList () books.add (b2) books.add (b3) Bibliotekbibliotek = nyt bibliotek (bøger) Liste bks = bibliotek .getTotalBooksInLibrary () til (Book bk: bks) {System.out.println ('Titel:' + bk.title + 'og' + 'Forfatter:' + bk.author)}}

Produktion:

En af de største fordele ved OOPS er, at vi kan genbruge koden. Der er to måder, hvorpå vi kan genbruge koden er en implementering afarv eller af objektsammensætningen.

Sammenligning af sammensætning og arv: forhold

  • Det er lettere i sammensætningen at ændre klasse end i arv.

  • Arv er den statiske binding, mens sammensætningen er den dynamiske binding.

  • Klassearv defineres på kompileringstidspunktet, mens objektsammensætningen er defineret i løbetiden.

  • I objektsammensætning skal de interne detaljer ikke udsættes for hinanden, og de interagerer ved hjælp af deres offentlige grænseflader, mens det i arv udsætter både offentligheden og de beskyttede medlemmer af baseklassen.

  • I sammensætning kan adgang begrænses, mens der i objektsammensætning ikke er adgangskontrol.

  • I arv bryder den indkapsling ved at udsætte en underklasse for detaljerne i dens forældres implementering, mens den i objektsammensætning ikke bryder indkapsling, fordi objekter er tilgængelige fuldstændigt gennem deres grænseflader.

  • I arv giver det kode genanvendelighed, mens det i objektsammensætning tillader at repræsentere foreningerne.

Eksempel 1:

klasse Operation {int kvadrat (int n) {return n * n}} klasse Circle {Operation op // aggregering dobbelt pi = 3,14 dobbelt areal (int radius) {op = ny Operation () int rsquare = op.square (radius) // kode genanvendelighed (dvs. delegerer metodeopkaldet). returner pi * rsquare} offentlig statisk ugyldig hoved (String args []) {Cirkel c = ny cirkel () dobbelt resultat = c.area (5) System.out.println (resultat)}}

Produktion:

Eksempel 2:

klasse Hus {Køkken k = nyt køkken () // mere kode til husklasse} Klassekøkken {// kode for køkkenklasse}

Hvis huset bliver ødelagt, bliver køkkenet også ødelagt. Dette er kendt som sammensætningen, når to enheder er afhængige af hinanden. Referenceklassen (køkken) kunne ikke eksistere uden containerklassen (hus).

java skift dobbelt til int

Med dette kommer vi til en ende af denne artikel Har et forhold i Java. Grundlæggende, i komposition, kan en klasse genbruge klassens funktionalitet ved at oprette en henvisning til objektet i klassen, som den ønsker at genbruge. Det er kendt som det specielle tilfælde af aggregering.

C Heck ud af af Edureka, et pålideligt online læringsfirma med et netværk på mere end 250.000 tilfredse elever spredt over hele kloden. Edurekas Java J2EE- og SOA-uddannelses- og certificeringskursus er designet til studerende og fagfolk, der ønsker at være Java-udvikler.

Har du et spørgsmål til os? Nævn det i kommentarfeltet på denne 'Har et forhold i Java' -blog, og vi vender tilbage til dig hurtigst muligt.