Posted on 2007-10-12 09:38
zht 阅读(1191)
评论(1) 编辑 收藏
Danny Coward在他的博客中列出了Java SE 6的十大新功能,同时也是他认为你应该升级到Java SE 6上的十大原因。这十大看点以次是:
-
性能和质量:Java 6同Java 5不一样,没有新的语言特征,是一个以稳定、提高为目的的版本。Java 6不论是服务器端还是客户端版本都有了两位数百分比的提高,根据领域的不同Java 6性能提高了20%-40%。在质量,仅仅是兼容性测试就有100,000个测试程序来保证,Java 6是第一版在社区模式下开放式的进行的,Mustang社区为Java 6的开发提供了大量的错误报告,这些错误由于及时地在版本开发早期阶段中就发现,使得这一版的质量得到了极大的提高。从各种社区对于Java 6的反馈来看,从beta开始,人们就普遍认为这是一般质量比较高的版本。
-
新的安全功能,Java 6对于安全的新支持主要有:JSR 105: XML DSIG API/implementation、本地平台GSS/Kerberos的集成、JSR 268: Smart Card I/O API、访问Windows平台本地PKI和加密服务、Java GSS实现对SPNEGO协议的支持、基于JAAS的LDAP认证、PKI证书路径生成器和校验器实现的改进等等。
-
桌面应用和部署。Java 6对于桌面应用的改进应该说是最大的亮点之一,它不像安全那么不容易被人注意到,已经有很多人认为Java 6是面向桌面应用的版本。Swing在许多方面得到改进:LookAndFeel,性能极大提高,字体反走样,GroupLayout集成,太多太多。可插拔标注(Pluggable Annotations),支持自定义的标注,并且在虚拟机参数中可以直接加入处理标注的脚本。详情参见Joe Darcy的一篇文章Standardizing Annotation Processing。
-
编译器API,Java 6提供了Compiler API可以让你编程实现对于Java编译器的运行时访问和控制。
-
虚拟机监控和管理,现在的虚拟机工具,包括监控、调优、调试、和管理都能在Java程序运行的时候动态连接上去进行调控,不需要你在启动Java程序之前设置好选项,这对于服务器端长时间运行的服务程序,比如应用服务器,Web服务器等等出现问题时进行调试提供了极大的方便,这些程序往往出现问题时需要即时环境调试,不可能允许你关闭他们,再使用调试选项重新启动,重新调试。这一点非常非常有用。
-
新的桌面API,包括SwingWorker、JTable排序和过滤、GroupLayout功能。SwingWorker能帮你编写响应速度比较快的Java用户界面。
-
数据库访问,新的JDBC 4.0 API,以及一个纯Java的数据库(前身是Apache Derby),允许你在编写小类型的java应用时使用改数据库作为信息存储。
-
脚本语言标准化支持。Java6标准化了脚本的支持,包括了流行的JRubby、JavaScript、Groovy等等。脚本语言的标准化被许多人看做Java 6最主要亮点之一。
-
Web服务的完全支持,提供了好用的API允许用户方便的开发Web服务,而不需要第三方的支持。
我觉得Danny对于这十条的排序并不是太合理,而且他漏了很多Java 6的新功能,我认为前三名应该是:
-
性能和质量的提升
-
桌面集成和部署的提高
-
脚本语言的标准化支持
当然每个人都有自己看法,这主要是和你关心的内容有关,你心目中最喜欢的Java6的新功能有哪些呢?