首頁  >  文章  >  Java  >  為什麼 Java 會拋出「此處不允許『void』類型」錯誤?

為什麼 Java 會拋出「此處不允許『void』類型」錯誤?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-11-17 13:33:01976瀏覽

Why Does Java Throw a

揭開「'void' type not allowed here」錯誤背後的秘密

遇到「void type not allowed here」錯誤可以是令人費解。為了理解它的重要性,讓我們深入研究它的脈絡。

考慮下面的程式碼片段:

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));
    }
}

嘗試編譯此程式碼時,您會遇到錯誤訊息:

obj.java:12: 'void' type not allowed here
        System.out.println(printPoint(blank));
                                               ^
1 error

出了什麼問題?

錯誤的根源在於 printPoint 方法。它的聲明指定它會傳回 void,這表示它不傳回任何值。因此,main 方法嘗試列印 printPoint 的回傳值(void)會導致「此處不允許使用 void 類型」錯誤。

錯誤訊息的意思是什麼?

錯誤訊息清楚地表明方法的回傳類型決定了可以對其回傳值執行什麼操作。在這種情況下,由於 printPoint 方法傳回 void,因此無法使用 System.out.println() 列印其傳回值。

解決方案

修正此問題,您需要修改程式碼以消除 printPoint 回傳值的不必要列印。相反,您應該直接呼叫 printPoint 方法,如下所示:

printPoint(blank);

這將消除類型不匹配並允許程式碼正確編譯和執行。

以上是為什麼 Java 會拋出「此處不允許『void』類型」錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn