Permulaan Pembolehubah Instance lwn. Pelaksanaan Pembina dalam Java
Satu tanggapan salah umum tentang pemulaan objek Java ialah tertib di mana medan dan pembina dilaksanakan . Mari kita jelaskan konsep ini dengan contoh.
Dalam coretan kod yang diberikan:
class X { Y b = new Y(); X() { System.out.print("X"); } } class Y { Y() { System.out.print("Y"); } } public class Z extends X { Y y = new Y(); Z() { System.out.print("Z"); } public static void main(String[] args) { new Z(); } }
Bertentangan dengan andaian bahawa medan dimulakan sebelum pembina, output program ini ialah "YZX". Untuk memahami sebabnya, kita perlu menyelidiki proses pemula Java.
Tertib Permulaan:
Java memulakan kelas dalam urutan tertentu:
Dalam contoh di atas, urutan peristiwa ialah:
Oleh itu, susunan pelaksanaan yang betul ialah "YZX". Ini menyerlahkan kepentingan memahami susunan permulaan Java untuk mengelakkan tingkah laku yang tidak dijangka dalam pembinaan objek.
Atas ialah kandungan terperinci Apakah Perintah Pelaksanaan yang Betul bagi Permulaan Pembolehubah Contoh dan Pelaksanaan Pembina di Jawa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!