首頁 >Java >java教程 >Java 中 Void 和非 Void 建構函數有什麼不同?

Java 中 Void 和非 Void 建構函數有什麼不同?

Barbara Streisand
Barbara Streisand原創
2024-12-09 07:33:06587瀏覽

What's the Difference Between Void and Non-Void Constructors in Java?

理解 Java 中的「void」和「非 void」建構子

在 Java 中,建構子扮演著獨特的角色,與方法不同。雖然它與其初始化的類別共享相同的名稱,但它缺少返回類型並且僅負責物件初始化。與方法不同,建構子不遵循方法重載的原則。

為了說明這個概念,請考慮以下程式碼片段:

在此片段中,宣告了一個非 void 建構子。正如預期的那樣,程式的輸出是 2。但是,請考慮以下修改後的程式碼:

在此修改後的程式碼片段中,建構函式已宣告為 void。結果呢?現在輸出為 0。此行為源自於以下事實:當宣告具有 void 傳回類型的建構函式時,它本質上不再是建構函數,而是常規方法。因此,它不具備執行物件初始化的能力。

在Java中,一個類別可以有多個建構函數,每個建構函數有不同的參數(參數清單),但只有一個沒有參數的建構子(預設建構子) 。如果類別沒有定義任何建構函數,編譯器會自動插入一個不帶參數的預設建構函數。

以上是Java 中 Void 和非 Void 建構函數有什麼不同?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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