对于功能类似的方法来说,因为参数列表不一样,却需要记住那么多不同的方法名称,太麻烦。
方法的重载(Overload) :多个方法的名称一样,但是参数列表不一样。
好处:只需要记住唯——个方法名称,就可以实现类似的多个功能。
方法重载与下列因素相关:
1.参数个数不同
2.参数类型不同
3.参数的多类型顺序不同
方法重载与下列因素无关:
1.与参数的名称无关
2.与方法的返回值类型无关
public class MethodOverload {
public static void main(String[] args) {
/*System.out.println(num(10,99));
System.out.println(num2(10,99,55));
System.out.println(num3(10,99, 44,33));*/
System.out.println(num(19, 49)); //两个参数的方法
System.out.println(num(11, 33, 33)); //三个参数的方法
System.out.println(num(11, 22, 33, 44)); //四个参数的方法
// System.out.println(num(19,49,11,11,11)); //找不到任何方法来匹配,因为多了一个参数,所以错误!
num(10, 30);
}
public static int num(int a, double b) { //实例
return (int) (a + b);
}
public static int num(double a, int b) { //实例
return (int) (a + b);
}
public static int num(int a, int b) {
System.out.println("有两个参数的方法执行!");
return (a + b);
}
// return x+y;//错误写法!与参数的名称无关
// public static int num(int x, int y) {
// }
public static int num(double a,double b){ //实例
return(int) (a+b);
}
public static int num(int a,int b,int c){
System.out.println("有三个参数的方法执行!");
return (a+b+c);
}
public static int num(int a,int b,int c ,int d){
System.out.println("有四个参数的方法执行!");
return (a+b+c);
}
}
本文分享 CSDN - 康贤。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。