Menyingkap Misteri Di Sebalik "jenis 'kosong' tidak dibenarkan di sini" Ralat
Menghadapi ralat "jenis batal tidak dibenarkan di sini" boleh membingungkan. Untuk memahami kepentingannya, mari kita mendalami konteksnya.
Pertimbangkan coretan kod di bawah:
class obj { public static void printPoint(Point p) { System.out.println("(" + p.x + ", " + p.y + ")"); } public static void main(String[] arg) { Point blank = new Point(3, 4); // This line generates the error System.out.println(printPoint(blank)); } }
Setelah cuba menyusun kod ini, anda menemui mesej ralat:
obj.java:12: 'void' type not allowed here System.out.println(printPoint(blank)); ^ 1 error
Apa yang Salah?
Punca ralat terletak pada kaedah printPoint. Pengisytiharannya menyatakan bahawa ia mengembalikan batal, bermakna ia tidak mengembalikan sebarang nilai. Akibatnya, percubaan kaedah utama untuk mencetak nilai pulangan printPoint (yang tidak sah) menghasilkan ralat "jenis kekosongan tidak dibenarkan di sini".
Apakah Maksud Mesej Ralat?
Mesej ralat dengan jelas menunjukkan bahawa jenis pulangan kaedah menentukan perkara yang boleh dilakukan dengan nilai pulangannya. Dalam kes ini, memandangkan kaedah printPoint mengembalikan batal, nilai pulangannya tidak boleh dicetak menggunakan System.out.println().
Penyelesaian
Untuk membetulkan isu ini , anda perlu mengubah suai kod anda untuk menghapuskan pencetakan nilai pulangan printPoint yang tidak diperlukan. Sebaliknya, anda harus memanggil kaedah printPoint secara terus seperti berikut:
printPoint(blank);
Ini akan menghapuskan ketidakpadanan jenis dan membenarkan kod untuk menyusun dan melaksanakan dengan betul.
Atas ialah kandungan terperinci Mengapa Java Melemparkan Ralat ''kosong' Tidak Dibenarkan Di Sini'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!