方法重载(Overload)。表示两个或多个方法名字相同,但方法参数不同。
方法参数不同有两层含义:
1) 参数个数不同
2) 参数类型不同。
方法间也可以相互调用:
public class Overload {
public static int add(int a,int b){
return a + b;
}
public static int add(int a, int b ,int c) {
System.out.println(add(2,3));//调用第一个方法
return a + b + c;
}
public static void main(String[] args) {
Overload ol = new Overload();
System.out.println(ol.add(2,3));
System.out.println(ol.add(2,3,4));
}
}
注意:方法的返回值对重载没有任何影响。通过下面这段错误的代码来说说这个问题
public class Overload2 {
public int method(int a) {
System.out.println(a);
return 1;
}
public boolean method(int a) {
System.out.println(a);
return false;
}
public static void main(String[] args) {
Overload2 ol = new Overload2();
}
}
编译之后会发现错误,已经在类中定义了方法method(int),这说明方法重载跟它前面的int和boolean 完全没有关系,而是与括号里面的参数个数和类型有关系!