Rumah  >  Artikel  >  Java  >  Mengapa Saya Mendapat Ralat 'Jenis Tidak Dibenarkan Di Sini' di Java?

Mengapa Saya Mendapat Ralat 'Jenis Tidak Dibenarkan Di Sini' di Java?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-11-11 00:21:02557semak imbas

Why Am I Getting the

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!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn