


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:
- Ahli Statik: Pembolehubah statik dan pemula dalam teks pesanan.
- Invokasi Pembina: Panggilan super constructor, sama ada eksplisit atau tersirat.
- Blok Pembolehubah Instance dan Initializer: Medan dan blok permulaan instance dalam susunan teks.
- Pembina Badan: Baki kod dalam pembina selepas panggilan super().
Dalam contoh di atas, urutan peristiwa ialah:
- Pembina Y dipanggil (Y).
- Pembina Z memanggil pembina X (YZ).
- Pembina X dipanggil (XYZ).
- Pembolehubah tika X dimulakan (YZXb).
- Pembolehubah tika Z y dimulakan (YZXby).
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!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

MinGW - GNU Minimalis untuk Windows
Projek ini dalam proses untuk dipindahkan ke osdn.net/projects/mingw, anda boleh terus mengikuti kami di sana. MinGW: Port Windows asli bagi GNU Compiler Collection (GCC), perpustakaan import yang boleh diedarkan secara bebas dan fail pengepala untuk membina aplikasi Windows asli termasuk sambungan kepada masa jalan MSVC untuk menyokong fungsi C99. Semua perisian MinGW boleh dijalankan pada platform Windows 64-bit.

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

Versi Mac WebStorm
Alat pembangunan JavaScript yang berguna

Dreamweaver Mac版
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)