方法的重载是指一个类中可以定义多个方法名相同,但参数不同的方法。 调用时,会根据不同的参数自动匹配对应的方法。
重载的方法,实际是完全不同的方法,只是名称相同而已!
构成方法重载的条件:
1.不同的含义:形参类型、形参个数、形参顺序不同
2.只有返回值不同不构成方法的重载
如:
int a(String str){}与int a(String s){}
3.只有形参的名称不同,不构成方法的重载
如:
int a(String str){}与int a(String s){}
示例方法的重载:
/**
* 学习方法的重载
* @author 房廷飞
*
*/
public class Text {
public static void main(String[] args) {
System.out.println(add(3,5)); //8
System.out.println(add(3,5,10)); //18
System.out.println(add(3.0,5)); //8.0
System.out.println(add(3,5.0)); //8.0
}
/** 求和的方法*/
public static int add(int n1,int n2) {
int sum=n1+n2;
return sum;
}
//方法名相同,参数个数不同可以构成重载
public static int add(int n1,int n2,int n3) {
int sum=n1+n2+n3;
return sum;
}
//参数类型不同可以构成重载
public static double add(double n1,int n2) {
double sum=n1+n2;
return sum;
}
//参数顺序不同可以构成重载
public static double add(int n1,double n2) {
double sum=n1+n2;
return sum;
}
//编译错误:只有返回值不同,不构成方法的重载
public static double add(int n1, int n2) {
double sum = n1 + n2;
return sum;
}
//编译错误:只有参数名称不同,不构成方法的重载
public static int add(int n2, int n1) {
double sum = n1 + n2;
return sum;
}
}
2019-02-15 11:43:17 房廷飞
原文:https://www.cnblogs.com/fangtingfei/p/10382830.html