语法定义:
使用...表示可变长参数,例如
print(类型... args){
...
}
具有可变长参数方法中内部可以当数组使用,外部可赋无数个值。
print(类型... args){
for(类型 temp:args)
System.out.println(temp);
}
调用可以给出任意多个参数也可以不给参数,例如:
print();
print("hello");
print("hello","lisi");
print("hello","张三", "alexia")
一个方法只能有一个可变长参数并且该参数必须是最后面一个参数
使用规范:
在具有重载方法时,重载方法的参数必须和可变长参数方法区分开来,赋值时如果匹配到赋值的数量刚好是重载方法,则只调用重载方法
如果子类继承了父类,父类有可变长参数方法,而子类又重写了父类的可变长参数方法,这个时候如果外部的对象类型是通过子类去调用,那么会进入子类的重载方法,并不会步入父类的方法,如果外部的对象类型是通过父类去调用,那么才会调用父类的重载方法