Java - 初识方法重载
一、什么是方法重载?
方法重载是指:在类中创建多个方法,它们可以有相同的名字,但必须具有不同的参数(参数的个数、参数的类型、参数类型的顺序)。调用方法时通过传递给它们的参数个数、参数类型、参数类型顺序的不同来决定具体使用哪个方法。另外,方法重载与修饰符、返回值类型、参数的名称与无关。
错误示范1:与修饰符无关
public static int sum(int a,int b){
return a+b;
}
private static int sum(int a,int b){
return a+b;
}
错误示范2:与返回值类型无关
public static int sum(int a,int b){
return a+b;
}
public static float sum(int a,int b){
return a+b;
}
错误示范3:与参数名称无关
public static int sum(int a,int b){
return a+b;
}
public static int sum(int c,int d){
return c+d;
}
二、如何实现方法重载
方法重载的实现:在参数列表中设置不同的数据类型、参数个数、参数类型的顺序。如:
例1:不同的数据类型
//传入两个 int 类型的数据
public static int sum(int a,int b){
return a+b;
}
//传入两个 short 类型的数据
public static int sum(short a,short b){
return a+b;
}
//传入两个 char 类型的数据
public static int sum(char a,char b){
return a+b;
}
//传入三个不同类型的数据
public static int sum(int a,short b,char c){
return a+b+c;
}
例2:不同的参数个数
//传入一个参数
public static int sum(int a){
return a+a;
}
//传入两个参数
public static int sum(int a,int b){
return a+b;
}
//传入三个参数
public static int sum(int a,int b,int c){
return a+b+c;
}
例3:不同参数类型的顺序
//沿用上面的例子,传入三个不同类型的数据
public static int sum(int a,short b,char c){
return a+b+c;
}
//当我把参数 c 和参数 b 交换位置后,方法依然是合法的
public static int sum(int a,char c,short b){
return a+b+c;
}