简述
什么是方法重载
在同一个类中, 允许存在一个以上的同名方法, 只要它们的 参数个数
、参数类型
不同即可
特点
- 与返回值类型无关, 只看方法名和参数列表
- 在调用时, 虚拟机通过参数列表的不同来区分同名方法
package com.kenvie;
public class ChongZai1 {
public static void main(String[] args) {
int a = 1;
int b = 2;
int c = 3;
System.out.println(sum(a,b,c));
System.out.println(sum(a,b));
}
public static int sum(int a,int b) {
int c = a + b;
return c;
}
//和上一个方法同名,但参数个数、参数类型不同
public static int sum(int a,int b,int c){
int d = a + b + c;
return d;
}
}
运行结果如下:
package com.kenvie;
public class ChongZai2 {
public static void main(String[] args) {
//定义变量
int a = 10;
int b = 20;
//求和方法
int result = sum(a,b);
System.out.println("result:"+result);
//定义变量
int c = 30;
//求和方法
//int result2 = sum2(a,b,c);
int result2 = sum(a,b,c);
System.out.println("result2:"+result2);
}
//不能出现方法名相同,并且参数列表也相同的情况
// public static int sum(int x,int y) {
// return x + y;
// }
public static float sum(float a,float b) {
return a + b;
}
//求三个数据的和
/*
public static int sum2(int a,int b,int c) {
return a + b + c;
}
*/
public static int sum(int a,int b,int c) {
return a + b + c;
}
//求两个数据的和方法
public static int sum(int a,int b) {
//int c = a + b;
//return c;
return a + b;
}
}