如果我更改返回类型,Java 中的方法会被重载吗?

java 8object oriented programmingprogramming

当一个类有两个或多个同名但参数不同的方法时,在调用时,会根据传递的参数调用相应的方法(或者相应的方法体会动态地与调用代码绑定)。这种机制称为方法重载

示例

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

基于不同返回类型的重载

重载时,两个方法必须具有 −

  • 名称相同。
  • 参数不同(不同类型、不同数量或两者兼有)。

返回类型相同并非强制要求。因此,如果方法名称相同但返回类型不同,则可以重载具有不同返回类型的方法。

示例

在下面的示例中,我们尝试重载两个方法:它们具有相同的名称(附加)、不同的参数和不同的返回类型。

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

相关文章