Περάστε με τιμή και περάστε με αναφορά στην Ιάβα



Αυτό το ιστολόγιο σας βοηθά να κατανοήσετε το Pass by Value και το Pass by Reference στην Java. Εξηγεί επίσης γιατί η Java αναφέρεται ως Pass by Value με παράδειγμα.

Η Java είναι μια από τις πιο θεμελιώδεις γλώσσες προγραμματισμού που μπορεί να πάρει ο καθένας. Είναι τόσο απλό την ίδια στιγμή, η δυνατότητα αυτού που μπορείτε να αναπτύξετε χρησιμοποιώντας Java, είναι άπειρη!Αυτό καθιστά τη Java την πιο διαδεδομένη γλώσσα στη βιομηχανία σήμερα.Αυτό το ιστολόγιο θα σας βοηθήσει να κατανοήσετε σχετικά με την τιμή pass by και το pass by referensi στην Java με την ακόλουθη σειρά:

Περάστε με τιμή και περάστε με αναφορά στην Ιάβα

Pass by Value και Pass by αναφορά είναι οι δύο τρόποι με τους οποίους μπορούμε να μεταβιβάσουμε μια τιμή στη μεταβλητή σε μια συνάρτηση.





  • Περάστε με τιμή: Πρόκειται για μια διαδικασία στην οποία οι τιμές των παραμέτρων συνάρτησης αντιγράφονται σε μια άλλη μεταβλητή και αντ 'αυτού αυτό το αντικείμενο που αντιγράφεται περνά. Αυτό είναι γνωστό ως κλήση με αξία.

  • Περάστε με αναφορά: Είναι μια διαδικασία στην οποία το πραγματικό αντίγραφο αναφοράς μεταβιβάζεται στη συνάρτηση. Αυτό καλείται με αναφορά.



Μιλώντας για την Java, μπορούμε να πούμε ότι η Java είναι Pass by Value και όχι πέρασμα με αναφορά.

Θα παρουσιάσουμε την αναφερόμενη δήλωση με προγραμματισμό.

Εικόνα με πρόγραμμα

Ας πούμε ότι έχουμε μια τάξη Αυτοκίνητο όπως παρακάτω.



δημόσια τάξη Αυτοκίνητο {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}

Στη συνέχεια έχουμε ένα πρόγραμμα που ανταλλάσσει δύο αντικείμενα.

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.getColor ()) System.out.println (' yellow color = '+ yellow.getColor ()) desc (yellow) System.out.println (' yellow color = '+ yellow.getColor ())} ιδιωτικό στατικό κενό (αυτοκίνητο αυτοκινήτου) {// car = 100 balloon.setColor ('Red') // car = 100 car = new car ('Green') // car = 200 car.setColor ('Yellow') / / car = 200} // μέθοδος swap public static void swap (Object o1, Object o2) {Object temp = o1 o1 = o2 o2 = temp}}

Παραγωγή

Κόκκινο χρώμα = Κόκκινο

Κίτρινο χρώμα = Κίτρινο

Κίτρινο χρώμα = Κόκκινο

.trim () java

Εξήγηση:

Έτσι, όπως είπα προηγουμένως ότι η JAVA περνάει από την τιμή, επομένως, μπορούμε να δούμε ότι οι δύο πρώτες γραμμές στην έξοδο η μέθοδος swap () δεν λειτούργησε. Ας κάνουμε μια λεπτομερή εξήγηση του κώδικα.

Pass by Value και Pass By Reference στην Java

Αρχικά, δημιουργήσαμε μια παρουσία μιας τάξης χρησιμοποιώντας το νέος χειριστής. Δημιουργείται και η τιμή αποθηκεύεται στη θέση μνήμης. Επομένως, αυτή η παρουσία δείχνει τη θέση μνήμης των αντικειμένων που είναι «κόκκινα» και «κίτρινα». Τώρα όταν καλούμε τις τιμές με νέα αντικείμενα o1 και o2 τότε δείχνει στη θέση μνήμης των δύο αντικειμένων που είναι «κόκκινα» και «κίτρινα». Έτσι, όταν η μέθοδος ανταλλαγής επικαλεσθεί στην αρχή, δείχνει τη θέση μνήμης του 'Red'. Στην επόμενη γραμμή, η αναφορά αυτοκινήτου αλλάζει στην επόμενη διεύθυνση και οδηγεί στη θέση μνήμης του 'κίτρινου'. Επομένως, ανταλλάσσονται στο δεύτερο βήμα, όχι στο πρώτο βήμα. Αυτός είναι ο λόγος για τον οποίο η JAVA αναφέρεται ως Pass by Value και όχι αναφορά.

Τώρα που έχετε κατανοήσει το Pass by Value και το Pass by Reference στην Java, ρίξτε μια ματιά στο από την Edureka, μια αξιόπιστη διαδικτυακή εταιρεία εκμάθησης με δίκτυο περισσότερων από 250.000 ικανοποιημένων μαθητών σε όλο τον κόσμο. Το μάθημα Εκπαίδευσης και Πιστοποίησης Java J2EE και SOA της Edureka έχει σχεδιαστεί για μαθητές και επαγγελματίες που θέλουν να γίνουν προγραμματιστές Java. Το μάθημα έχει σχεδιαστεί για να σας δώσει μια πρώτη αρχή στον προγραμματισμό Java και να σας εκπαιδεύσει τόσο για τις βασικές όσο και για τις προηγμένες ιδέες Java μαζί με διάφορα πλαίσια Java όπως το Hibernate & Spring.

Έχετε μια ερώτηση για εμάς; Παρακαλώ αναφέρετέ το στην ενότητα σχολίων αυτού του άρθρου 'Pass by Value and Pass by Reference in Java' και θα επικοινωνήσουμε μαζί σας το συντομότερο δυνατό.