方法的重载:在一个类中可以有多个相同名字的方法,但是它们的参数类型以及个数不能相同,对于返回值没有要求。
例如:
public static int add(int a,int b){ return a+b; } public static int add(int a,int b,int c){ return a+b+c; } public static double add(double a,double b){ return a+b; } public static void main(String[] args) { int a=10; int b=20; int c=30; double d=3.14; double e=13.14; System.out.println(add(a,b)); //调用的是第一个方法 System.out.println(add(a,b,c)); //调用的是第二个方法 System.out.println(add(d,e)); //调用的是第三个方法 }
结果是:
我们在使用相同方法名的方法时,区分它们就靠不同的参数个数和参数类型,返回值的类型对于方法的调用影响。
如果我们只改变了返回值,传入的参数个数和类型都没有改变,编译器就会报错,这两个方法不算是重载!
我们其实最常用到的方法的重载就是println方法,我们发现无论我们输入整数,浮点数,字符,布尔型数据他都可以帮我们打印,是因为系统已经提前帮我们写好了不同参数的println方法。
这里只截取了一部分,全部的可以点ctrl加鼠标左键再点println看到~