Pass by Value dan Pass by Reference di Java



Blog ini membantu Anda memahami Pass by Value dan Pass by Reference di Java. Ini juga menjelaskan mengapa Java disebut sebagai Pass by Value with example.

Java adalah salah satu bahasa pemrograman paling mendasar yang dapat dipelajari siapa pun. Ini sangat sederhana pada saat yang sama, kemungkinan apa yang dapat Anda kembangkan menggunakan Java, tidak terbatas!Inilah yang membuat Java menjadi bahasa yang paling banyak digunakan di industri saat ini.Blog ini akan membantu Anda memahami tentang pass by value dan pass by referensi di Java dalam urutan berikut:

Pass by Value dan Pass by Reference di Java

Pass by Value dan Pass by reference adalah dua cara yang digunakan untuk mengirimkan nilai ke variabel dalam suatu fungsi.





casting ganda ke int java
  • Lewati Nilai: Ini adalah proses di mana nilai parameter fungsi disalin ke variabel lain dan sebagai gantinya objek ini disalin diteruskan. Ini dikenal sebagai panggilan dengan Nilai.

  • Lewati Referensi: Ini adalah proses di mana salinan referensi yang sebenarnya diteruskan ke fungsi. Ini disebut dengan Referensi.



Berbicara tentang Java, kita dapat mengatakan bahwa Java adalah Pass by Value dan bukan pass by reference.

Kami akan mengilustrasikan pernyataan yang dikutip melalui pemrograman.

Ilustrasi dengan Program

Katakanlah kita memiliki kelas Mobil seperti dibawah ini.



Mobil kelas publik {Private String color public Car () {} Mobil publik (String a) {this.color = a} String publik getColor () {return color public void setColor (String color) {this.color = color}

Selanjutnya kami memiliki program yang menukar dua objek.

kelas publik 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) = '+ red.getColor ()) System.out.println (' yellow color = '+ yellow.getColor ()) desc (kuning) System.out.println (' yellow color = '+ yellow.getColor ())} private static void desc (Car car) {// car = 100 balloon.setColor ('Red') // car = 100 car = new car ('Green') // car = 200 car.setColor ('Yellow') / / car = 200} // metode swap public static void swap (Object o1, Object o2) {Object temp = o1 o1 = o2 o2 = temp}}

Keluaran

Warna merah = Merah

Warna kuning = Kuning

Warna kuning = Merah

Penjelasan:

kapan harus menggunakan ini. di jawa

Jadi seperti yang saya katakan sebelumnya bahwa JAVA adalah pass by Value, oleh karena itu, kita dapat melihat bahwa dua baris pertama dalam output metode swap () tidak berfungsi. Mari kita lakukan penjelasan lengkap tentang kode tersebut.

Pass by Value dan Pass By Reference di Jawa

Pertama, kami membuat instance kelas dengan menggunakan baru operator. Itu dibuat dan nilainya disimpan di lokasi memori. Oleh karena itu, instance ini menunjukkan lokasi memori objek yang berwarna 'merah' dan 'kuning'. Sekarang ketika kita memanggil nilai dengan objek baru o1 dan o2 maka itu menunjuk ke lokasi memori dari dua objek yaitu 'merah' dan 'kuning'. Jadi, saat metode swap dipanggil pada awalnya, ia menunjuk ke lokasi memori 'Merah'. Di baris berikutnya, referensi Mobil diubah ke alamat berikutnya dan diarahkan ke lokasi memori 'kuning'. Oleh karena itu, mereka ditukar pada langkah kedua, bukan pada langkah pertama. Inilah mengapa JAVA disebut sebagai Pass by Value dan bukan referensi.

Sekarang setelah Anda memahami Pass by Value dan Pass by Reference di Java, lihat oleh Edureka, perusahaan pembelajaran online tepercaya dengan jaringan lebih dari 250.000 pelajar yang puas dan tersebar di seluruh dunia. Kursus Pelatihan dan Sertifikasi Java J2EE dan SOA Edureka dirancang untuk siswa dan profesional yang ingin menjadi Pengembang Java. Kursus ini dirancang untuk memberi Anda permulaan dalam pemrograman Java dan melatih Anda untuk konsep Java inti dan lanjutan bersama dengan berbagai kerangka kerja Java seperti Hibernate & Spring.

Ada pertanyaan untuk kami? Harap sebutkan di bagian komentar di artikel 'Pass by Value dan Pass by Reference in Java' dan kami akan menghubungi Anda kembali secepatnya.