Sådan passerer du efter reference i Java

Sadan Passerer Du Efter Reference I Java



Mens han beskæftiger sig med matematiske beregninger i Java, kan der være tilfælde, hvor udvikleren skal anvende en specifik funktionalitet på flere værdier. Til det skal programmøren tildele en separat funktion og udføre de ønskede funktionaliteter i den. Værdierne overføres derefter til denne funktion, opdateres og returneres i overensstemmelse hermed. I sådanne tilfælde er det til stor hjælp at overføre ved reference i Java til at tilføje identiske funktionaliteter på de samme værdier.

Denne blog vil uddybe metoderne til at passere ved reference i Java.







Hvad er 'Pass by Reference' i Java?

At passere ved reference i Java betyder, at når en metode kaldes, refererer metodeargumenterne til den samme variabel i hukommelsen som invokeren.



Hvordan 'Giver du videre' i Java?

For at passere ved reference i Java skal du overveje følgende tilgange:



Eksempel 1: Bestå reference i Java ved at returnere en opdateret værdi

I dette eksempel kan det initialiserede heltal sendes som et funktionsargument, der øges i funktionen og returneres:





int givet nummer = 2 ;

System . ud . println ( 'Det givne nummer er: ' + givet nummer ) ;

givet nummer = stigning ( givet nummer ) ;

System . ud . println ( 'Det opdaterede nummer er: ' + givet nummer ) ;

offentlig statisk int stigning ( int opdateringNum ) {

opdateringNum ++;

Vend tilbage opdateringNum ;

}

I ovenstående kodelinjer:

  • For det første skal du initialisere heltalsværdien og vise den.
  • I næste trin skal du aktivere funktionen ' stigning() ” ved at sende hele tallet som argument og vise det øgede tal.
  • Til sidst skal du definere en funktion ved navn ' stigning() ” med den angivne parameter, der skal øges.
  • I funktionsdefinitionen skal du øge det beståede tal og returnere det.

Produktion



I dette output kan det ses, at det initialiserede nummer er bestået, forøget og returneret.

Eksempel 2: Gå gennem reference i Java ved at returnere et inkrementeret array-element

Tilføj nu følgende kode:

int givenArray [ ] = { 2 , 3 , 4 } ;

System . ud . println ( 'Det givne nummer er: ' + givenArray [ 1 ] ) ;

stigning ( givenArray ) ;

System . ud . println ( 'Det opdaterede nummer er: ' + givenArray [ 1 ] ) ;

}

offentlig statisk ugyldig stigning ( int øge [ ] ) {

øge [ 1 ] ++;

}

Her:

  • For det første skal du erklære et array med navnet ' givenArray[ ] ” indeholdende heltalsværdierne.
  • Derefter skal du vise den indekserede matrixværdi.
  • Send nu matrixværdien som et funktionsargument, og vis på samme måde det øgede heltal på konsollen.
  • Til sidst skal du på samme måde erklære funktionen ' stigning() ” med parameteren, der peger på den matrixværdi, der skal inkrementeres.
  • I funktionsdefinitionen skal du øge den beståede værdi og returnere den.

Produktion

I ovenstående resultat kan det observeres, at den initialiserede værdi passeres og øges i overensstemmelse hermed.

Eksempel 3: Bestå reference i Java ved at opdatere en offentlig medlemsvariabel i en klasse

I denne demonstration kan en klassevariabel fremkaldes og øges ved at henvise til klasseobjektet:

klasse customClass {

offentlig int givet nummer ;

offentlig customClass ( ) {

givet nummer = 2 ;

} }

offentlig klasse Eksempel {

offentlig statisk ugyldig vigtigste ( Snor args [ ] ) {

customClass objekt = ny customClass ( ) ;

System . ud . println ( 'Det givne nummer er: ' + objekt. givet nummer ) ;

stigning ( objekt ) ;

System . ud . println ( 'Det opdaterede nummer er: ' + objekt. givet nummer ) ;

}

offentlig statisk ugyldig stigning ( customClass obj ) {

obj. givet nummer ++;

}

}

I ovenstående kodeblok:

  • Definer en klasse ved navn ' customClass ”. Angiv også en offentlig variabel i klassen.
  • I næste trin skal du oprette klassekonstruktøren ' customClass() ” og initialiser det angivne heltal i det.
  • Derefter skal du oprette et objekt af den oprettede klasse med navnet ' objekt ' via ' ny ' søgeord og ' customClass() ” konstruktør hhv.
  • Vis nu det initialiserede heltal ved at henvise til klasseobjektet.
  • Kald funktionen ' stigning() ” og send det oprettede objekt for at anvende funktionaliteterne af funktionen på klassen.
  • Til sidst skal du erklære funktionen ' stigning() ” og forøg det initialiserede heltal ved at henvise til klasseobjektet.

Produktion

Ovenstående resultat betyder, at det ønskede krav er opfyldt.

Konklusion

For at passere ved reference i Java skal du returnere en opdateret værdi, returnere et øget array-element eller opdatere en offentlig variabel i en klasse. Disse tilgange udfører den ønskede funktionalitet ved at overføre et heltal, et array-element eller et klasseobjekt som et funktionsargument og henholdsvis øge den initialiserede værdi. Denne blog angav tilgangene til at passere ved reference i Java.