1、JDK1.4和JDK5的区别
1)泛型
2)自动装箱/拆箱
3)for-each即for循环增强
4)static import
5)变长参数
1、泛型简单来说就是变量类型的参数化。它把 指定类型的工作 推迟到客户端 代码声明并实例化类或方法 的时候进行。
public class YouClass<T>{
private T name;//...
//getter、setter
}
2、即基本数据类型与对应的引用(包装)类型之间不需要显式的转换。
ArrayList<Integer> arrayList = new ArrayList<Integer>();
arrayList.add(2);//而非1.4的arrayList.add(new Integer(2));//当时也还没有引入泛型
3、将for循环简化的一种循环遍历形式
for(type arg : args){
//your code...
}
4、可静态导入,如导入System类的话即可在输入的时候写out.prinln('...');
5、变长参数即方法支持不定长度的同类型参数,如:
int sum(int... args){
int sum =0;
for(int arg : args){
sum +=arg;
}
return sum;
}
//枚举,and更多。
-----------------------------------------------------------------------------------
2、JDK5和JDK6的区别
http://www.ibm.com/developerworks/cn/java/j-lo-jse6/ 非常详细
3、JDK6与JDK7的区别
--待议
1)泛型
2)自动装箱/拆箱
3)for-each即for循环增强
4)static import
5)变长参数
1、泛型简单来说就是变量类型的参数化。它把 指定类型的工作 推迟到客户端 代码声明并实例化类或方法 的时候进行。
public class YouClass<T>{
private T name;//...
//getter、setter
}
2、即基本数据类型与对应的引用(包装)类型之间不需要显式的转换。
ArrayList<Integer> arrayList = new ArrayList<Integer>();
arrayList.add(2);//而非1.4的arrayList.add(new Integer(2));//当时也还没有引入泛型
3、将for循环简化的一种循环遍历形式
for(type arg : args){
//your code...
}
4、可静态导入,如导入System类的话即可在输入的时候写out.prinln('...');
5、变长参数即方法支持不定长度的同类型参数,如:
int sum(int... args){
int sum =0;
for(int arg : args){
sum +=arg;
}
return sum;
}
//枚举,and更多。
-----------------------------------------------------------------------------------
2、JDK5和JDK6的区别
http://www.ibm.com/developerworks/cn/java/j-lo-jse6/ 非常详细
3、JDK6与JDK7的区别
--待议