Pass by Value og Pass by Reference i Java

Denne blog hjælper dig med at forstå Pass by Value og Pass by Reference i Java. Det forklarer også, hvorfor Java kaldes Pass by Value med eksempel.

Java er et af de mest grundlæggende programmeringssprog, som alle kan hente. Det er så simpelt på samme tid, muligheden for, hvad du kan udvikle ved hjælp af Java, er uendelig!Dette gør Java til det mest anvendte sprog i branchen i dag.Denne blog hjælper dig med at forstå værdien forbipasserende og videregivelse i Java i følgende rækkefølge:



Pass by Value og Pass by Reference i Java

Pass by Value og Pass by reference er de to måder, hvorpå vi kan overføre en værdi til variablen i en funktion.



  • Gå forbi værdi: Det er en proces, hvor funktionsparameterværdierne kopieres til en anden variabel, og i stedet sendes dette kopierede objekt. Dette kaldes call by Value.

  • Gå forbi reference: Det er en proces, hvor den faktiske kopi af referencen overføres til funktionen. Dette kaldes ved reference.



Når vi taler om Java, kan vi sige, at Java er Pass by Value og ikke passerer som reference.

Vi illustrerer den op-citerede erklæring ved programmering.

Illustration med program

Lad os sige, at vi har en klasse Bil som nedenfor.



public class Car {private String color public Car () {} public Car (String a) {this.color = a} public String getColor () {return color public void setColor (String color) {this.color = color}

Dernæst har vi et program, der bytter to objekter.

public class Disp {public static void main (String [] args) {Car red = new Car ('Red') Balloon yellow = new Balloon ('Yellow') swap (red, yellow) System.out.println ('red color = '+ rød.getColor ()) System.out.println (' gul farve = '+ gul.getColor ()) desc (gul) System.out.println (' gul farve = '+ gul.getColor ())} privat statisk ugyldig beskrivelse (bil bil) {// bil = 100 ballon.setColor ('rød') // bil = 100 bil = ny bil ('grøn') // bil = 200 bil.setColor ('gul') / / car = 200} // swap-metode public static void swap (Object o1, Object o2) {Object temp = o1 o1 = o2 o2 = temp}}

Produktion

Rød farve = Rød

Gul farve = Gul

Gul farve = Rød

Forklaring:

Så som jeg fortalte tidligere, at JAVA passerer værdi, kan vi derfor se, at de første to linjer i output swap () -metoden ikke virkede. Lad os lave en grundig forklaring af koden.

Pass by Value og Pass By Reference i Java

Først oprettede vi en forekomst af en klasse ved hjælp af ny operatør. Det oprettes, og værdien gemmes på hukommelsesplaceringen. Derfor peger denne instans hukommelsesplaceringen af ​​objekter, der er “røde” og “gule”. Når vi nu kalder værdierne med nye objekter o1 og o2, peger det på hukommelsesplaceringen af ​​de to objekter, der er “rød” og “gul”. Så når swap-metoden først påberåbes, peger den på hukommelsesplaceringen 'Red'. I den næste linje ændres bilreference til den næste adresse, og den bliver peget på 'gul' hukommelsesplacering. Derfor byttes de på det andet trin, ikke på det første trin. Dette er grunden til, at JAVA kaldes Pass by Value og ikke reference.

hvad er forskellen mellem git og github

Nu hvor du har forstået Pass by Value og Pass by Reference i Java, skal du tjekke 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-kursus er designet til studerende og fagfolk, der ønsker at være Java-udvikler. Kurset er designet til at give dig et forspring i Java-programmering og træne dig til både kerne- og avancerede Java-koncepter sammen med forskellige Java-rammer som Hibernate & Spring.

Har du et spørgsmål til os? Nævn det i kommentarfeltet i denne 'Pass by Value og Pass by Reference in Java' -artikel, og vi vender tilbage til dig hurtigst muligt.