」工欲善其事,必先利其器。「—孔子《論語.錄靈公》
首頁 > 程式設計 > 方法重載

方法重載

發佈於2024-11-08
瀏覽:962
  • Java 允許方法重載,即同一類別的兩個或多個方法可以共享相同的名稱。

  • 當方法參數宣告不同時,就會發生方法重載。

  • 方法重載是Java中實現多態性的一種方式。

  • 要重載一個方法,需要宣告它的不同版本。

  • 編譯器會根據參數自動選擇正確的方法。

  • 一個重要的限制:重載方法的參數類型和/或數量必須不同,而不僅僅是返回類型不同。

  • 重載方法的傳回類型也可能不同,但參數對於選擇正確的方法至關重要。

  • 呼叫重載方法時,執行參數與參數相符的版本。

Sobrecarga de métodos

Sobrecarga de métodos

  • ovlDemo() 方法使用不同的簽章重載四次:

  • 第一個版本:無參數。

  • 第二個版本:附有整數參數。

  • 第三個版本:有兩個整數參數。

  • 第四個版本:有兩個雙參數。

  • ovlDemo() 的前兩個版本傳回 void,而後兩個版本回傳值。

  • 方法重載不受回傳類型影響。

  • 嘗試使用僅透過傳回類型區分簽章的 ovlDemo() 的兩個版本將導致錯誤。

Sobrecarga de métodos

  • 傳回類型的差異不足以實現Java中的方法重載。

  • 此範例顯示,具有相同簽章的兩個方法,即使傳回類型不同,也會導致錯誤。

  • Java 執行自動型別轉換,這些轉換也適用於重載方法的參數。

Sobrecarga de métodos

  • 此範例顯示了 f() 方法的兩個版本:一個具有 int 參數,另一個具有 double 參數。

  • byte和short類型的值自動轉換為int,呼叫f(int)方法。

  • 透過呼叫f(double)方法將Float值轉換為double。

  • 當參數和參數之間沒有直接匹配時,就會發生自動轉換。

  • 加入帶有位元組參數的 f() 版本可能會改變值的處理方式。

Sobrecarga de métodos

  • 目前版本,當使用 byte 參數呼叫 f() 時,直接呼叫 f(byte),不會自動轉換為 int。

  • 方法重載允許Java中的多態性,促進「一個接口,多種方法」範式的實現。

  • 在不支援重載的語言中,不同資料型別的相似方法必須有不同的名稱(例如C中的abs()、labs()、fabs())。

  • Java允許對不同類型參數的方法使用相同的名稱,例如Math類別的abs()方法,它針對不同的數值類型進行了重載。

  • 重載透過允許相關方法共享一個通用名稱來降低複雜性。

  • 方法的正確版本的選擇是由編譯器根據參數類型完成的。

  • 雖然重載方法可以執行不同的活動,但它們必須相關才能保持清晰度和連貫性。

  • 避免對不相關的操作使用重載方法名稱,因為這可能會混淆程式碼的意圖。

版本聲明 本文轉載於:https://dev.to/devsjavagirls/sobrecarga-de-metodos-28m3?1如有侵犯,請洽[email protected]刪除
最新教學 更多>

免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。

Copyright© 2022 湘ICP备2022001581号-3