Tertib Permulaan Blok Pemula Statik dan Instance di Java
Java memulakan blok pemula statik dan instance dalam susunan tertentu, memastikan pemuatan yang betul dan pelaksanaan kelas. Susunan ini adalah penting untuk mengurus kebergantungan dan peruntukan sumber.
Pemula Statik
Java memulakan blok pemula statik untuk kelas hanya apabila kelas itu atau ahli statik kelas itu pertama kali digunakan. Perkara berikut mencetuskan permulaan blok statik:
Pemula Instance
Blok pemula Instance, sebaliknya, dilaksanakan serta-merta sebelum pembina kelas. Susunan pelaksanaan ditentukan oleh kemunculan blok ini dalam definisi kelas.
Contoh
Pertimbangkan coretan kod berikut:
class Parent { // Static initializer static { System.out.println("static - parent"); } // Instance initializer { System.out.println("instance - parent"); } // Constructor public Parent() { System.out.println("constructor - parent"); } } class Child extends Parent { // Static initializer static { System.out.println("static - child"); } // Instance initializer { System.out.println("instance - child"); } // Constructor public Child() { System.out.println("constructor - child"); } }
Apabila kelas Kanak-kanak dijadikan instantiated, output berikut ialah dihasilkan:
static - parent static - child instance - parent constructor - parent instance - child constructor - child
Ini menunjukkan bahawa pemula statik kelas induk (dalam kes ini, Induk) dilaksanakan sebelum kelas anak (Kanak-kanak). Dalam setiap kelas, blok pemula instance dilaksanakan sebelum pembina.
Pengecualian untuk Kelas Tidak Digunakan
Dalam Java, kelas yang tidak digunakan tidak pernah dimuatkan atau dimulakan. Ini terpakai pada blok pemula statik dan instance. Dalam contoh kod yang disediakan, menambah kelas baharu (IAmAClassThatIsNeverUsed) yang tidak pernah dirujuk tidak menjejaskan susunan permulaan kelas lain.
Atas ialah kandungan terperinci Bagaimanakah Blok Pemula Statik dan Instance Dipesan di Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!