方法的重载
重载就是在一个类中,有相同的函数名称,但形参不同的函数
方法重载的规则:
-
方法名必须相同
-
参数列表必须不同(个数不同、类型不同、参数排序顺序不同等)
-
方法的返回类型可以相同也可以不同
-
返回类型不同不足以成为方法的重载
方法名称相同时,编译器会根据调用方法的参数个数、参数类型等去逐个匹配,以选择对应的方法,如果匹配失败,则报错
public class Demo1 {
public static void main(String[] args) {
int sum=add(1,2,3);
double sum1=add(1.5,5,3);
System.out.println(sum);
System.out.println(sum1);
}
//方法名可以相同,当方法名相同时判断参数类型和参数个数
public static int add(int a,int b,int c)
{
return a+b+c;
}
public static double add(double a,double b,double c){
return a+b+c;
}
}
可变参数
在方法声明中,在指定参数类型后加一个省略号
一个方法中只能指定一个可变参数,它必须是方法的最后一个参数。任何普通的参数必须在它之前声明
public class Demo2 {
public static void main(String[] args) {
Demo demo=new Demo();
//给不定参数赋值
demo.test(1,2,3);
}
public void test(int ... i)
{
//返回第一个数
System.out.println(i[0]);
}
//可变参数只能在最后
public void test1(int x,int... y)
{
System.out.println(y[0]);
}
}