Rumah >Java >javaTutorial >Mengapa Saya Mendapat Ralat 'Jenis Tidak Dibenarkan Di Sini' di Java?
Mengenal pasti Punca Ralat "Void Type Not Allowed Here"
Apabila menyusun kod Java, anda mungkin menghadapi mesej ralat "void type tidak dibenarkan di sini." Ralat ini berlaku apabila anda cuba memberikan nilai kepada pembolehubah atau ungkapan yang menjangkakan nilai jenis data yang berbeza.
Dalam kod yang disediakan dalam soalan:
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); System.out.println(printPoint(blank)); // Error: Void type not allowed here } }
Ralat berlaku pada baris di mana anda cuba untuk menetapkan nilai pulangan kaedah printPoint kepada panggilan println. Kaedah printPoint diisytiharkan sebagai batal, yang bermaksud ia tidak mengembalikan nilai. Oleh itu, cubaan untuk memberikan nilai pulangannya kepada panggilan println adalah tidak sah.
Penjelasan Ralat
Mesej ralat "jenis batal tidak dibenarkan di sini" menunjukkan bahawa data yang dijangkakan taip di lokasi tertentu dalam kod anda tidak batal. Dalam kes ini, kod menjangkakan nilai akan diberikan kepada panggilan println, tetapi nilai pulangan kaedah printPoint adalah tidak sah.
Penyelesaian
Untuk menyelesaikan masalah ini ralat, anda perlu mengalih keluar baris tugasan:
printPoint(blank);
Kaedah printPoint masih akan dipanggil dan akan mencetak koordinat titik kosong ke konsol, tetapi nilai pulangannya tidak akan diberikan kepada mana-mana pembolehubah .
Atas ialah kandungan terperinci Mengapa Saya Mendapat Ralat 'Jenis Tidak Dibenarkan Di Sini' di Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!