Melewati nilai---melewati parameter tipe data dasar
Copy kode kodenya sebagai berikut:
Nilai Tiket kelas publik{
static void exchange(int a, int b){//Metode statis, menukar nilai a dan b
ke suhu;
suhu = a;
a = b;
b = suhu;
}
public static void main(String[] args){
ke dalam saya = 10;
int j = 100;
System.out.println("sebelum panggilan: " + "i=" + i + "/t" + "j = " + j);//sebelum panggilan
exchange(i, j); //Transfer nilai, metode utama hanya dapat memanggil metode statis
System.out.println("setelah panggilan: " + "i=" + i + "/t" + "j = " + j);//Setelah panggilan
}
}
Hasil berjalan:
Copy kode kodenya sebagai berikut:
sebelum panggilan: i = 10 j = 100
setelah panggilan: i = 10 j = 100
Catatan: Saat memanggil exchange(i, j), parameter aktual i dan j meneruskan nilainya ke parameter formal yang sesuai a dan b masing-masing Saat metode exchange() dijalankan, nilai formal berubah parameter a dan b tidak mempengaruhi parameter sebenarnya. Nilai i dan j tidak berubah sebelum dan sesudah panggilan.
Melewati referensi --- objek sebagai parameter
Copy kode kodenya sebagai berikut:
Buku Kelas{
nama string;
harga folat swasta;
Buku(String n, float){ //Metode konstruksi
nama = n;
harga = hal;
}
perubahan kekosongan statis(Pesan a_book, String n, float p){ //Metode statis, objek sebagai parameter
a_book.nama = n;
a_book.harga = p;
}
public void output(){ //Metode instance, informasi objek keluaran
System.out.println("nama: " + nama + "/t" + "harga: " + harga);
}
}
PassAddr kelas publik{
public static void main(String [] args){
Buku b = Buku baru("java2", 32.5f);
System.out.print("sebelum panggilan:/t"); //Sebelum menelepon
b.keluaran();
b.change(b, "c++", 45.5f); //Transfer referensi, mentransfer referensi objek b, mengubah nilai objek b
System.out.print("setelah panggilan:/t"); //Setelah panggilan
b.keluaran();
}
}
Hasil berjalan:
Copy kode kodenya sebagai berikut:
sebelum panggilan: nama:java2 harga:32.5
setelah panggilan: nama:c++ harga:45.5
Catatan: Saat memanggil change(b,"c++",45.5f), objek b digunakan sebagai parameter sebenarnya, dan referensi diteruskan ke parameter formal terkait a_book. Faktanya, a_book juga menunjuk ke objek yang sama, yaitu , objek memiliki dua nama referensi: b dan a_book. Saat menjalankan metode change(), operasi pada parameter formal a_book adalah operasi pada parameter aktual b.