方法重载使用注意事项:
1,方法名:必须相同;
2,参数列表:必须不同(参数类型或者个数或者顺序,至少有一样不同,参数名无要求)
3,返回类型:无要求;(返回类型不同不能说明方法重载)
可变参数
1.基本概念:Java允许将同一个类多个同名同功能但参数个数不同的方法,封装成一个方法
2.基本语法
访问修饰符 返回类型 方法名(数据类型...形参名){}
public static void main(String[] args) {
HspMaethod m=new HspMaethod();
int res=m.sum(1,1,2);
System.out.println("求和"+res);
}
}
class HspMaethod{
//解读
//int...表示接收可变参数,类型是int ,即可接受多个int
//使用可变参数时可以当作数组来使用 nums可以当作数组
//遍历nums
public int sum(int...nums)
{
System.out.println("接受的参数个数="+nums.length);
int res=0;
for (int i=0;i<nums.length;i++)
{
res+=nums[i];
}
return res;
}
可变参数的细节
1.可变参数的实参可以是数组
public static void main(String[] args) {
WWW m=new WWW();
int[] arr ={1,2,3};
m.f1(arr);
// System .out.println();
}
}
class WWW{
public void f1(int...nums){
System.out.println("可变参数的个数"+nums.length);
}
}
2.可变参数和普通类型的参数可以放在形参列表一起,但必须保证可变形参在后面
/*可变参数跟普通类型的参数放在一起形参列表时候,可以变参数必须放到后
这个放到前面报错(int...nums,double j)
(double j,int...nums)编译通过;
*/
//public void f2(int...nums,double j){
//}
public void f2(double j,int...nums){
}
3.一个形参列表里面只能有一个可变参数;
/*
(double...nums,int... nums2)编译不通过
一个形参列表中只能有一个可变参数
*/