Rumah >Java >javaTutorial >Bagaimanakah Pembolehubah Bayangan Menyahpasang Kod Tempatan dalam Kelas Java?
Apabila meneroka konsep pembayang pembolehubah dalam kelas Java, adalah penting untuk mempersoalkan tujuannya dan memahami implikasinya. Membayangkan membenarkan penggunaan pembolehubah tempatan dengan nama yang sama dengan pembolehubah bukan tempatan. Senario sedemikian mungkin timbul apabila subkelas mewarisi pembolehubah daripada kelas induknya.
Pertimbangkan contoh berikut:
public class Foo { int x = 5; public void useField() { System.out.println(this.x); // Prints 5 } public void useLocal() { int x = 10; System.out.println(x); // Prints 10 } }
Dalam contoh ini, pembayangan pembolehubah kelas x dalam kaedah useLocal adalah langkah yang perlu. Tanpanya, kaedah itu akan cuba mengakses pembolehubah kelas, yang bersifat peribadi kepada kelas yang mengandungi dan oleh itu tidak boleh diakses dari dalam subkelas.
Adalah penting untuk ambil perhatian bahawa bayang-bayang hanya boleh digunakan dalam situasi yang anda benar-benar berniat untuk mencipta pembolehubah baharu yang bebas daripada pembolehubah bukan tempatan yang dibayanginya. Berhasrat untuk berkongsi data di bawah pembolehubah berbayang adalah tidak betul dan berpotensi menyebabkan gelagat masa jalan yang tidak dijangka.
Atas ialah kandungan terperinci Bagaimanakah Pembolehubah Bayangan Menyahpasang Kod Tempatan dalam Kelas Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!