當前位置:妙知谷 >

職場理財 >職場就業 >

Java的方法重載

Java的方法重載

如果一個類中有多個具有相同名稱但參數不同,與返回值無關的方法,則稱為方法重載。
方法重載提高了程序的可讀性。
在java中重載方法有兩種方式,它們分別是:
通過改變參數的數量
通過更改數據類型

操作方法

(01)修改參數的數量創建兩個方法,第一個add()方法執行兩個數值的相加操作,第二個add()方法執行三個數值的相加操作。在這個例子中,我們創建靜態方法,所以不需要創建實例來調用方法

Java的方法重載
Java的方法重載 第2張

(02)更改參數的數據類型創建兩種數據類型不同的方法第一個add方法接收兩個整數參數,第二個add方法接收兩個雙精度型參數。

Java的方法重載 第3張
Java的方法重載 第4張

(03)問題:為什麼方法重載不能通過更改方法的返回類型?在java中,只通過改變方法的返回類型來實現方法重載是不可能的,因為這樣具有模糊性。 讓我們來看看模糊性是怎麼樣發生的

Java的方法重載 第5張
Java的方法重載 第6張

(04)tln((11,11));//這裏,java如何確定應該調用哪個sum()方法?可以重載java main()方法嗎?這是完全可以的。 可以通過方法重載在類中有任意數量的main方法。 但是JVM調用main()方法,它只接收字符數組作為參數。 讓我們來看一個簡單的例子:

Java的方法重載 第7張
Java的方法重載 第8張

(05)方法重載和類型提升如果沒有找到匹配的數據類型,那麼會隱式地將一個類型提升到另一個類型。 讓我們通過下面的圖示來理解這個概念:

Java的方法重載 第9張

(06)如上圖所示,byte可以被提升為short,int,long,float或double。 short數據類型可以提升為int,long,float或double。 char數據類型可以提升為int,long,float或double等等。使用類型提升方法重載的示例

Java的方法重載 第10張
Java的方法重載 第11張

(07)如果找到匹配使用類型提升方法重載示例如果方法中存在匹配類型參數,則不會執行類型提升方法重載。

Java的方法重載 第12張
Java的方法重載 第13張

(08)在模糊的情況下使用類型提升來實現方法重載的示例如果在方法中沒有匹配的類型參數,並且每個方法都會提升相同數量的參數,那麼會出現歧義。如下示例代碼,將會產生編譯時錯誤。

Java的方法重載 第14張

特別提示

在java中,只通過更改方法的返回類型來實現方法重載是不可以的

標籤: JAVA 重載
  • 文章版權屬於文章作者所有,轉載請註明 https://miaozhigu.com/zclc/jiuye/2elq0m.html