如果我更改返回类型,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