Hoe doorgeven door verwijzing in Java

Hoe Doorgeven Door Verwijzing In Java



Tijdens het omgaan met wiskundige berekeningen in Java kunnen er gevallen zijn waarin de ontwikkelaar een specifieke functionaliteit op meerdere waarden moet toepassen. Daarvoor moet de programmeur een aparte functie toewijzen en daarin de gewenste functionaliteiten uitvoeren. De waarden worden vervolgens doorgegeven aan deze functie, bijgewerkt en dienovereenkomstig geretourneerd. In dergelijke gevallen is het doorgeven van referenties in Java een grote hulp bij het toevoegen van identieke functionaliteiten aan dezelfde waarden.

Deze blog gaat dieper in op de benaderingen om door te verwijzen in Java.







Wat is 'Pass by Reference' in Java?

Passing by reference in Java betekent dat wanneer een methode wordt aangeroepen, de methodeargumenten verwijzen naar dezelfde variabele in het geheugen als de invoker.



Hoe 'Pass by Reference' in Java?

Overweeg de volgende benaderingen om door te verwijzen in Java:



Voorbeeld 1: Pass-by-referentie in Java door een bijgewerkte waarde te retourneren

In dit voorbeeld kan het geïnitialiseerde gehele getal worden doorgegeven als een functieargument dat wordt opgehoogd in de functie en wordt geretourneerd:





int gegevenNummer = 2 ;

Systeem . uit . println ( 'Het opgegeven nummer is: ' + gegevenNummer ) ;

gegevenNummer = verhoging ( gegevenNummer ) ;

Systeem . uit . println ( 'Het bijgewerkte nummer is: ' + gegevenNummer ) ;

openbaar statisch int verhoging ( int updateNum ) {

updateNum ++;

opbrengst updateNum ;

}

In de bovenstaande regels code:

  • Initialiseer eerst de gehele waarde en geef deze weer.
  • Roep in de volgende stap de functie ' verhogen () ” door het gehele getal als argument door te geven en het opgehoogde getal weer te geven.
  • Definieer ten slotte een functie met de naam ' verhogen () ” met de vermelde parameter die moet worden verhoogd.
  • Verhoog in de functiedefinitie het doorgegeven getal en retourneer het.

Uitgang



In deze uitvoer is te zien dat het geïnitialiseerde getal wordt doorgegeven, opgehoogd en geretourneerd.

Voorbeeld 2: Pass-by-referentie in Java door een verhoogd matrixelement te retourneren

Voeg nu de volgende code toe:

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

Systeem . uit . println ( 'Het opgegeven nummer is: ' + gegevenArray [ 1 ] ) ;

verhoging ( gegevenArray ) ;

Systeem . uit . println ( 'Het bijgewerkte nummer is: ' + gegevenArray [ 1 ] ) ;

}

openbaar statisch leegte verhoging ( int toename [ ] ) {

toename [ 1 ] ++;

}

Hier:

  • Verklaar eerst een array met de naam ' gegevenArray[ ] ” met de gehele waarden.
  • Geef daarna de geïndexeerde matrixwaarde weer.
  • Geef nu de arraywaarde door als een functieargument en geef op dezelfde manier het verhoogde gehele getal weer op de console.
  • Verklaar ten slotte op dezelfde manier de functie ' verhogen () ” waarbij de parameter wijst naar de arraywaarde die moet worden verhoogd.
  • Verhoog in de functiedefinitie de doorgegeven waarde en retourneer deze.

Uitgang

In het bovenstaande resultaat kan worden waargenomen dat de geïnitialiseerde waarde wordt doorgegeven en dienovereenkomstig wordt verhoogd.

Voorbeeld 3: Pass-by-referentie in Java door een openbare lidvariabele in een klasse bij te werken

In deze demonstratie kan een klassevariabele worden aangeroepen en opgehoogd door te verwijzen naar het klassenobject:

klas aangepasteKlasse {

openbaar int gegevenNummer ;

openbaar aangepasteKlasse ( ) {

gegevenNummer = 2 ;

} }

openbaar klas Voorbeeld {

openbaar statisch leegte voornaamst ( Snaar argumenten [ ] ) {

customClass-object = nieuw aangepasteKlasse ( ) ;

Systeem . uit . println ( 'Het opgegeven nummer is: ' + voorwerp. gegevenNummer ) ;

verhoging ( voorwerp ) ;

Systeem . uit . println ( 'Het bijgewerkte nummer is: ' + voorwerp. gegevenNummer ) ;

}

openbaar statisch leegte verhoging ( customClass obj ) {

obj. gegevenNummer ++;

}

}

In het bovenstaande codeblok:

  • Definieer een klasse met de naam ' aangepasteKlasse ”. Geef ook een openbare variabele op binnen de klasse.
  • Maak in de volgende stap de klassenconstructor ' aangepasteKlasse() ” en initialiseer het opgegeven gehele getal erin.
  • Maak daarna een object van de gemaakte klasse met de naam ' voorwerp ' via de ' nieuw ' trefwoord en de ' aangepasteKlasse() ” constructeur, respectievelijk.
  • Geef nu het geïnitialiseerde gehele getal weer door te verwijzen naar het klasseobject.
  • Roep de functie aan ' verhogen () ” en geef het gemaakte object door om de functionaliteiten van de functie op de klasse toe te passen.
  • Verklaar ten slotte de functie ' verhogen () ” en verhoog het geïnitialiseerde gehele getal door te verwijzen naar het klasseobject.

Uitgang

Bovenstaande uitkomst geeft aan dat aan de gewenste eis is voldaan.

Conclusie

Als u in Java een verwijzing wilt doorgeven, retourneert u een bijgewerkte waarde, retourneert u een verhoogd array-element of werkt u een openbare variabele in een klasse bij. Deze benaderingen voeren de gewenste functionaliteit uit door respectievelijk een geheel getal, array-element of klasse-object als functieargument door te geven en de geïnitialiseerde waarde te verhogen. Deze blog vermeldde de benaderingen om door te verwijzen in Java.