java 3
overload and override
overload 这和返回值没有关系
override 这个如果父亲的方法是私有的,那不是,是全新的方法
1.5 有新feature了
为了避免你写N多的overload方法,比如 一个参数不定的累加方法
可以这样写
public static int add(int x,int... args) {
int sum = 0;
return sum;
}
其实"int... args"是个 [数组] 拉 注意一定要放最后哦
然后:
public static int add(int x,int... args) {
int sum = x;
for(int i=0;i<args.length;i++){
sum+=args[i];
}
return sum;
}
当然,上面对数组的遍历方法,新加坡人不是怎么喜欢!!
要用什么叠代器的,
先不说叠代器,还是用一下1.5新feature
enhance for loop
for( type var : collection){...}
不要你的 length 了,懒得去拿了,
就用var 一个一个去戳你collection里的东西,戳到一个拿出一个,然后run{...}
速度快,听说叠代器还要快!
可以改成这样了:
public static int add(int x,int... args) {
int sum = x;
for(int arg : args){
sum+=arg;
}
return sum;
}
★★这里的取名 arg : args ,是一定要这样取,否则就滚!!别来编程了
然后再说一下 这里的collection 一定要实现 Iterable interface..
可以去SUN 网 看 什么language specification
search for
langspec-3.0
The Java Language Specification,Third Edition