如果我更改返回型別,Java 中的方法會過載嗎?


當一個類有兩個或多個同名但引數不同的方法時,在呼叫時,根據傳遞的引數,呼叫相應的方法(或相應的方法體將動態地與呼叫行繫結)。這種機制被稱為**方法過載**。

示例

class Test{
   public int addition(int a, int b){
      int result = a+b;
      return result;
   }
   public int addition (int a, int b, int c){
      int result = a+b+c;
      return result;
   }
   public static void main(String args[]){
      Test t = new Test();
      System.out.println(t.addition(25, 36));
      System.out.println(t.addition(25, 50, 25));
   }
}

輸出

61
100

基於不同返回型別的過載

在過載中,必須滿足以下條件:

  • 相同的名稱。
  • 不同的引數(不同的型別或不同的數量或兩者兼而有之)。

相同的返回型別不是強制性的。因此,如果方法具有相同的名稱和不同的引數,則可以使用不同的返回型別過載方法。

示例

在下面的示例中,我們嘗試過載兩個方法:它們具有相同的名稱(addition),不同的引數和不同的返回型別。

class Test{
   public int addition(int a, int b){
      int result = a+b;
      return result;
   }
   public float addition (float a, float b){
      float result = a+b;
      return result;
   }
   public static void main(String args[]){
      Test t = new Test();
      System.out.println(t.addition(25, 36));
      System.out.println(t.addition(100.25f, 36.1f));
   }
}

輸出

61
136.35

更新於: 2020年7月2日

1K+ 閱讀量

啟動您的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.