例子:求两个int、两个double、两个long数据的和,是否可以写一个方法,调用此方法,可以计算三组的和?
这种方法就是方法重载机制。( js不支持 )。
不用方法重载:三个方法写法:public static int sumint(int a, int b){return a+b;}
public static double sumdouble(double a, double b){return a+b;}
public static long sumlong(long a ,long b ){return a+b;}
调用:main(...){
sumint(1,2);
sumdouble(1.2,3.4);
sumlong(4l,3l);
}
使用方法重载:三个方法写法:
public static int sum(int a, int b){return a+b;}
public static double sum(double a, double b){return a+b;}
public static long sum(long a ,long b ){return a+b;}
调用:main(...){
sum(1,2);
sum(4.6,3.5);
sum(5l,6l);
}
区别与联系:1:功能相似的方法,可以用重载机制,尽可能让方法名相同。功能不相似,别让方法名相同。
2:方法重载之后,起决定作用的不是方法名,而是 方法的形参的数据类型。
3:构成方法重载的条件:3.1:在同一类中。
3.2:方法名相同。
3.3:参数列表不同(数量、顺序、类型)。
4:方法重载和 方法名+参数列表 有关系;和 方法的返回值类型、方法的修饰符类表 无关。
来源:CSDN
作者:云扬2017
链接:https://blog.csdn.net/qq_40047359/article/details/103481567