重载
基本概念-两同一不同
在同一个类中,允许存在一个以上的同名方法,只要他们的参数个数或者参数类型不同即可。
重载特点
与返回值类型无关,只看参数列表,且参数列表(个数或类型)必须不同。调用时,根据方法参数列表的不同来区分。
重载示例:
public class OverLoadTest {
public static void main(String[] args) {
OverLoadTest test = new OverLoadTest();
test.getSum(1, 2);//1
test.getSum("1", 2);//3
}
public void getSum(int i, int j) {
System.out.println("1");
}
public void getSum(double i, double j) {
System.out.println("2");
}
public void getSum(String s, int j) {
System.out.println("3");
}
}
可变个数的形参
常用于处理sql查询结果
1、jdk5.0新增的内容
2、具体使用:
1)可变个数形参的格式:数据类型 ...变量名,如:String ...strs
2)当调用可变个数形参的方法时,传入的参数个数可以是:0~n个
3)可变形参必须同类型
4)可变个数形参的方法与本来中方法名相同,形参不同的方法之间构成重载
5)可变个数形参的方法与本来中方法名相同,形参类型相同的数组之间不构成重载,即二者不能同存。具体如下,两个不能共存
public void show(String ...strs) {}
public void show(String[] strs) {}
6)可变形参和数组类型其实一样,如下:
public void show(String... strs) {
System.out.println(strs);// 输出的是地址:[Ljava.lang.String;@6b71769e
for(inti=0;i<strs.length;i++){
System.out.print(strs[i]);
}
}
7)可变形参声明时,在参数列表中,必须在末尾
public void show(int i, String... strs) {}
8)一个方法形参中,最多只能有一个可变形参