Pembina dalam Java: "Void" lwn. "Non-Void"
Dalam bahasa pengaturcaraan Java, kelas boleh mempunyai pembina, yang ialah kaedah khas yang dipanggil apabila contoh kelas dibuat. Pembina berfungsi untuk memulakan keadaan objek. Terdapat dua jenis pembina: pembina "void" dan pembina "non-void".
Pembina "Non-Void"
Pembina "non-void" mengisytiharkan jenis pulangan selain batal. Dalam erti kata lain, ia mengembalikan nilai, biasanya contoh kelas itu sendiri. Apabila pembina "non-void" dipanggil, objek baharu dicipta dan nilai yang dikembalikan diberikan kepada pembolehubah rujukan yang memanggil pembina.
"Void" Constructors
Pembina "Void", sebaliknya, tidak mengisytiharkan jenis pulangan. Sebaliknya, mereka hanya melaksanakan badan pembina dan memulakan keadaan objek. Mereka tidak mengembalikan nilai, dan oleh itu tidak boleh digunakan untuk mencipta objek baharu.
Isu Keterlihatan Pembina
Di Java, pembina tidak mempunyai pengubah suai akses yang sama seperti kaedah. Keterlihatan pembina mesti sepadan dengan keterlihatan kelas itu sendiri. Contohnya, jika kelas diisytiharkan awam, maka pembinanya juga mesti diisytiharkan awam.
Contoh: Kesan Keterlihatan Pembina
Pertimbangkan dua coretan kod berikut:
Contoh 1: Pembina dengan Pulangan Taip
public class Class1 { public static Integer value = 0; public Class1() { da(); } public int da() { Class1.value += 1; return 5; } public static void main(String[] args) { Class1 h = new Class1(); Class1 h2 = new Class1(); System.out.println(Class1.value); } }
Contoh 2: Pembina dengan Jenis Pengembalian Void
public class Class1 { public static Integer value = 0; public void Class1() { da(); } public int da() { Class1.value += 1; return 5; } public static void main(String[] args) { Class1 h = new Class1(); Class1 h2 = new Class1(); System.out.println(Class1.value); } }
Pemerhatian:
Dalam Contoh 1, output ialah 2. Ini kerana pembina memanggil kaedah da(), yang menambah medan nilai sebanyak 1.
Walau bagaimanapun, dalam Contoh 2, output ialah 0. Ini kerana pembina dengan jenis pengembalian void sebenarnya tidak memanggil kaedah da(). Sebaliknya, ia adalah kaedah dengan nama yang sama dengan kelas, yang berbeza daripada pembina.
Kesimpulan:
Di Java, pembina bukan kaedah. Ia digunakan untuk memulakan keadaan objek dan tidak mempunyai jenis pulangan. Percubaan untuk mengisytiharkan pembina dengan jenis pemulangan selain daripada batal akan mengakibatkan ralat penyusunan.
Atas ialah kandungan terperinci Java Constructors: Apakah Perbezaan Antara Void dan Non-Void Constructors?. 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

Versi Mac WebStorm
Alat pembangunan JavaScript yang berguna

Muat turun versi mac editor Atom
Editor sumber terbuka yang paling popular

DVWA
Damn Vulnerable Web App (DVWA) ialah aplikasi web PHP/MySQL yang sangat terdedah. Matlamat utamanya adalah untuk menjadi bantuan bagi profesional keselamatan untuk menguji kemahiran dan alatan mereka dalam persekitaran undang-undang, untuk membantu pembangun web lebih memahami proses mengamankan aplikasi web, dan untuk membantu guru/pelajar mengajar/belajar dalam persekitaran bilik darjah Aplikasi web keselamatan. Matlamat DVWA adalah untuk mempraktikkan beberapa kelemahan web yang paling biasa melalui antara muka yang mudah dan mudah, dengan pelbagai tahap kesukaran. Sila ambil perhatian bahawa perisian ini

SublimeText3 versi Inggeris
Disyorkan: Versi Win, menyokong gesaan kod!

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)