為什麼在 java 中僅透過改變方法的返回型別無法實現方法過載?
過載是機制,它可以根據傳遞給方法呼叫的引數動態地將方法呼叫與方法體繫結。
如果您觀察以下示例,它包含兩個方法,它們具有相同的名稱和不同的引數,如果您透過傳遞兩個整數值來呼叫該方法,將執行第一個方法,如果您透過傳遞 3 個整數值來呼叫,則第二個方法將執行。
不可能在基於返回型別的情況下確定執行哪個方法,因此,僅透過更改方法的返回型別無法實現過載。
示例
public class Sample{
public int add(int a, int b){
int c = a+b;
return c;
}
public void add(int a, int b, int c){
int z = a+b+c;
System.out.println(z);
}
public static void main(String args[] ){
Sample obj = new Sample();
System.out.println(obj.add(40, 50));
obj.add(40, 50, 60);
}
}
輸出
90 150
廣告
資料結構
聯網
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP