J2SE 1.5版本的新特性一览

 更新时间:2006年12月23日 00:00:00   作者:  
文章来源:互联网 作者:supertoto(翻译)/CSDN.Net

 到了2003的年末,J2SE1.5的beta版本就将发布了。这次发布和现在已经发布的J2SE1.4的两个更新1.4.1和1.4.2都如2003年的JavaOne大会预期的发布。如果你没有参加这次大会,或者想重新回顾一下,那么下面就是这次大会的简要内容。

   J2SE 1.4.1 and 1.4.2 Releases

  当1.4.1(开发代号“Hopper”)在2002年9月发布以及它的后续版本1.4.2(开发代号“Mantis”)在2003年1月如期发布的时候,已经修复了超过4000个的bug,并且还在继续的修复中。

  在J2SE1.5的新特性中,将添加一些众人期待已久的功能,比如对Itenium CPU的完全支持;Swing的用户将看到两个全新的内建Look & Feels,一个是Windows XP风格,一个GTK风格;同时启动时间上也有改进。

  在服务器端的增强主要包含了两个新增的GC,一个并行标记清扫算法(concurrent mark and sweep algorithm)和类似年轻空间收集(parallel young space collector)。这两个新的GC能通过编译的参数来调用:-XX:+UseConcMarkSweepGC 和 -XX:+UseParallelGC。

  接下来,如何运用这些参数来调整系统的最佳性能就是我们在J2SE1.5中需要学习和理解的了。

  J2SE 1.5 Release

  J2SE 1.5(开发代号“Tiger”)是Java平台和语言上的一个重要修改,目前主要包括了15个JSR的请求和其他一些类似的更新。这次的Release主要关注于几个关键的主题:主要是品质,监视和管理,性能和可扩展性,轻松的开发以及桌面客户端。

  Ease of Development(轻松的开发)

  你可能已经听到过了关于减轻开发难度而做的Java语言上的修改。这次J2SE根据JSR的要求实现以下几个JSR:JSR 201 包含了4个修改;JSR 175的核心是支持元数据(metadata),而JSR 14则规范了泛型。

  元数据功能提供了声明式的开发,并且取代了一些工具的代码生成和维护功能。泛型提升了无需手动转型(manual casting)的代码复用,通常manual casting都会带来类型安全性上的一些问题。

 另外的四个修改分别是:

  用for循环来遍历容器(Collection 类型),而不需要显式的声明容器的迭代器(Iterator);

  枚举类型提供了超越类似final static int的,增强的类型安全性;

  当在泛型中使用基本数据类型(Primitive Types)的时候提供自动装箱(autoboxing)功能(原来的泛型中是不能使用基本类型的);

  引入了静态常量(static constants)类改进显式的共享一个静态数据;

  为了实现轻松的开发,除了语言上的修改之外,还有一些额外的东西,比如一些怀念printf函数的会发现它又回来了;一个新的并发工具(在JSR 166中提及)将使得多线程编程变的更加简单轻松。

  Scalability and Performance(可扩展性和性能)

  J2SE 1.5版本将承诺改进可扩展性和性能,尤其是在启动时间和内存印记(memory footprint)上,将使得用户能以最快的速度发布一个应用程序。从JSR 163上将实现内建的性能工程(Performance ergonomics)和个功能强劲的API profile工具。

  Monitoring and Manageability(监视和管理)

  监视和管理是Tiger中的一个主要特性。那些在J2EE平台上使用JMX的开发者将非常开心的看到这样的特性能在J2SE中实现。通过对JVM的监视,将允许对已发布的应用程序健康性的完全检查,包括对底层内存泄漏检测,错误处理甚至是API 堆栈跟踪(stack trace)的监视。

  Core XML Support(核心的XML支持)

  J2SE 1.5的介绍被修改为XML的核心平台,表示Java的核心API将包括了XML1.1,SAX 2.0和DOM Level3。Web service方面的API,JAX-RPC,和JAXB将继续出现在Web Service的包中,在以后的新版本中这些API将被添加到核心API中去。

  Desktop Client(桌面客户端)

  最后一个重点的新特性是桌面客户端。这将带来几个内建的新的Look & Feels支持,并且增强了对皮肤(skins)的支持。除了启动速度和内存印记的增强,桌面开发者又多了几个值得期待的新特性。

  Unicode 3.1 Support(对Unicode 3.1的支持)

  32位的代理字符(surrogate character)支持将会很谨慎的添加到新的版本中,所以1.5版本将仍然使用16位的char类型。

  New IO Support(新的IO支持)

  新版本将提供对异步IO的支持,并且支持在平台中适当的地方开拓更深入的使用这些API。

  有了J2SE 1.4.2和J2SE1.5,Java的开发者们将拥有一个激动人心的一年。

相关文章

  • IDEA中如何查找jar包之间的依赖关系并忽略依赖的某个包

    IDEA中如何查找jar包之间的依赖关系并忽略依赖的某个包

    这篇文章主要介绍了IDEA中如何查找jar包之间的依赖关系并忽略依赖的某个包?本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-08-08
  • java web实现简单聊天室

    java web实现简单聊天室

    这篇文章主要为大家详细介绍了java-web实现简单聊天室,含拍一拍功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-11-11
  • tio-http-server打包为二进制文件的实现及优势详解

    tio-http-server打包为二进制文件的实现及优势详解

    这篇文章主要为大家介绍了tio-http-server打包为二进制文件实现示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-12-12
  • Springsession nginx反向代理集成过程

    Springsession nginx反向代理集成过程

    这篇文章主要介绍了Springsession nginx反向代理集成过程,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-04-04
  • 使用Maven进行依赖漏洞检查的实现指南

    使用Maven进行依赖漏洞检查的实现指南

    在现代软件开发中,开源库的使用变得愈加普遍和重要,然而,这些开源库中的漏洞往往会成为潜在的安全风险,在本文中,我们将探讨如何使用 Maven 进行依赖漏洞检查,以确保项目的安全性和稳定性,需要的朋友可以参考下
    2024-05-05
  • struts2中常用constant命令配置方法

    struts2中常用constant命令配置方法

    这篇文章主要介绍了struts2中常用constant命令配置方法,需要的朋友可以参考下
    2016-09-09
  • springboot整合redis过期key监听实现订单过期的项目实践

    springboot整合redis过期key监听实现订单过期的项目实践

    现在各种电商平台都有自己的订单过期时间设置,那么如何设置订单时间过期呢,本文主要介绍了springboot整合redis过期key监听实现订单过期的项目实践,感兴趣的可以了解一下
    2023-12-12
  • 详解springmvc 中controller与jsp传值

    详解springmvc 中controller与jsp传值

    本篇文章主要介绍了springmvc 中controller与jsp传值,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-07-07
  • java new一个对象的过程实例解析

    java new一个对象的过程实例解析

    这篇文章主要介绍了java new一个对象的过程实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-12-12
  • Linux下Java开发环境搭建以及第一个HelloWorld

    Linux下Java开发环境搭建以及第一个HelloWorld

    这篇文章主要介绍了Linux下Java开发环境搭建以及第一个HelloWorld的实现过程,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2015-09-09

最新评论