今天一个电话面试中问道JDK5与JDK6的区别,打得不好,确切的说没答出来。赶忙到晚上查了下资料。记录在博客中。
http://hi.baidu.com/salever/blog/item/7f3150c61455001c9c163dc5.html
1. 泛型
2 自动装箱/拆箱
3 for-each
4 static import
5 变长参数
1. 泛型 1.4之前 java util包中容器类,装的是Object对象,你要装特定的类型可以,但要强制转换,这可能导致运行时错误.
例:原来ArrayList list=new ArrayList();
list.add(new Integer(3));
list.add(new Integer(4));
int i=((Integer)(list.get(0))).parseInt();
很麻烦
现在ArrayList <Integer> list=new ArrayList <Integer> ();
list.add(new Integer(3));
list.add(new Integer(4));
int i=list.get(0).parseInt();
不用Cast,运行时错误变为编译时错误,这是进步.
类似与C++中的摸板templete.但机理不同.
2 自动装箱/拆箱
还是刚才例子
最后一句可改为
int i=list.get(0);
原始类型与对应的包装类不用显式转换,方便
3 for-each
循环的增强
int a[]={……..};//初始化,略
for(int i:a)
{
……
}
不用以前的i=0;i <a.length;i++
4 static import
以前调Java.math
Math.sqrt();
现在 static import java.lang.Math.sqrt;
再 sqrt();
相当于你自己类里有这个方法
5 变长参数
int sum(int …intlist)
{
int i,sum;
sum=0;
for(int i=0;i <intlist.length;i++)
{
sum+=list[i];
}
return sum;
}
有任意个参数,把他看作数组
jdk6和jdk5相比的新特性有:
1、instrumentation
在 Java SE 6 里面,instrumentation 包被赋予了更强大的功能:启动后的 instrument、本地代码 instrument,以及动态改变 classpath 等等。
2、Http有所增强
3、 Java 管理扩展(JMX) 架构及其框架,以及在 Java SE 5 中新引入的 JMX API — java.lang.management 包
4、JDK 6 中新增加编译器 API(JSR 199)。利用此 API,您可以在运行时调用 Java 编译器,可以编译不同形式的源代码文件,还可以采集编译器的诊断信息。
5、Java DB 和 JDBC 4.0
6、对脚本语言的支持
Java SE 6 新引入的对 JSR 223 的支持,它旨在定义一个统一的规范,使得 Java 应用程序可以通过一套固定的接口与各种脚本引擎交互,从而达到在 Java 平台上调用各种脚本语言的目的。
7、XML API 与 Web 服务
Java SE 6 中提供的 XML 处理框架,以及在此框架之上结合注释(Annotation) 技术,所提供的强大的针对 Web 服务的支持
详细介绍见:http://www.ibm.com/developerworks/cn/java/j-lo-jse6/
分享到:
相关推荐
在本主题中,我们重点关注的是Windows 64位系统下的JDK6、JDK7和JDK8的安装包。这三个版本的JDK在Java的发展历程中都占有重要的地位,它们为开发者提供了编写、编译、调试和运行Java应用程序所需的所有工具。 首先...
mac for jdk1.6 jdk6 安装版 里面有两个jdk1.6的安装包,都可以用 如果电脑上安装有1.7,1.8等高版本jdk就不要再下安装包了,安装包安装会报错 命令是这个:brew install java6或 brew install homebrew/cask-...
1. **泛型类型推断**:Java 5引入了泛型,而JDK6进一步优化了这一特性,允许编译器进行类型推断,减少了冗余的类型参数。 2. **改进的Swing和AWT**:Swing组件得到了增强,例如JTable的性能提升,以及更好的布局...
本资源包集合包括了JDK6、JDK7和JDK8三个重要版本,分别代表了Java发展历程中的关键节点。 JDK6,也称为Java SE 6(标准版6),于2006年发布,是Java平台的一个重要里程碑。此版本引入了许多新特性,如改进的Swing...
JDK11安装包,JDK11安装包JDK11安装包,JDK11安装包JDK11安装包,JDK11安装包JDK11安装包,JDK11安装包JDK11安装包,JDK11安装包JDK11安装包,JDK11安装包JDK11安装包,JDK11安装包JDK11安装包,JDK11安装包JDK11...
官网 jdk6,jdk7,jdk8,jdk9,jdk10 windox 32位、64位、linux 32位、64位 百度云。
这个压缩包文件"jdk-6u45-linux-x64.zip"包含的是JDK 1.6.0_45(也被称为6u45或1.6u45)的64位Linux版本。JDK 1.6是Java平台标准版的一个重要版本,它提供了许多功能和性能改进,是许多企业级应用的基础。 JDK 1.6u...
jdk-6u21-windows-x64 jdk-6u21-windows-x64 jdk-6u21-windows-x64 jdk-6u21-windows-x64 jdk-6u21-windows-x64 jdk-6u21-windows-x64 jdk-6u21-windows-x64 jdk-6u21-windows-x64 jdk-6u21-windows-x64 jdk-6u21-...
JDK6 帮助文档 JDK6 帮助文档JDK6 帮助文档 JDK6 帮助文档
jdk8帮助文档jdk8帮助文档jdk8帮助文档jdk8帮助文档jdk8帮助文档jdk8帮助文档jdk8帮助文档jdk8帮助文档jdk8帮助文档jdk8帮助文档jdk8帮助文档jdk8帮助文档jdk8帮助文档jdk8帮助文档jdk8帮助文档jdk8帮助文档jdk8帮助...
linux版jdk6linux版jdk6linux版jdk6linux版jdk6linux版jdk6linux版jdk6linux版jdk6
jdk5、jdk6新特性系统介绍.chm 系统、全面 本人自己整理的资料
【标题】"jdk6-linux"指的是Java Development Kit (JDK) 的6版,专为Linux操作系统设计。在软件开发领域,JDK是用于编写、测试和运行Java应用程序的关键工具集。这个版本是针对Linux环境的,它包含了编译器、调试器...
32位JDK可以与32位的应用程序和库无缝配合,确保兼容性。对于开发和运行32位Java应用,尤其是那些依赖32位库的项目,使用32位JDK是必要的。 在使用JDK 6时,开发者需要注意以下几点: 1. **环境变量配置**:安装...
JDK6 帮助文档 JDK6 帮助文档JDK6 帮助文档 JDK6 帮助文档
JDK 与 JRE 的区别 JDK(Java Development Kit)和 JRE(Java Runtime Environment)是 Java 语言的两个核心组件,它们之间存在着一定的关系和区别。下面我们将详细介绍 JDK 和 JRE 的概念、区别和关系。 JDK JDK...
jdk6 源码jdk6 源码jdk6 源码jdk6 源码jdk6 源码jdk6 源码
Mac 版本 jdk 11 Mac 版本 jdk 11 Mac 版本 jdk 11Mac 版本 jdk 11 Mac 版本 jdk 11 Mac 版本 jdk 11Mac 版本 jdk 11 Mac 版本 jdk 11 Mac 版本 jdk 11Mac 版本 jdk 11 Mac 版本 jdk 11 Mac 版本 jdk 11Mac 版本 jdk...
mac系统jdk1.8安装包!mac系统jdk1.8安装包!mac系统jdk1.8安装包!mac系统jdk1.8安装包!mac系统jdk1.8安装包!mac系统jdk1.8安装包!mac系统jdk1.8安装包!mac系统jdk1.8安装包!mac系统jdk1.8安装包!mac系统jdk...
6. XML处理:增强了XML解析和转换功能,例如`javax.xml.bind`包提供了数据绑定框架,使Java对象与XML文档之间的转换更方便。 安装JDK 1.6 on Windows x64平台的步骤非常简单: 1. 解压缩"java-jdk1.6-jdk-6u45-...