J2SE 1.5版本的新特性一览

 更新时间:2006年12月23日 00:00:00   作者:  
(福利推荐:【腾讯云】服务器最新限时优惠活动,云服务器1核2G仅99元/年、2核4G仅768元/3年,立即抢购>>>:9i0i.cn/qcloud

(福利推荐:你还在原价购买阿里云服务器?现在阿里云0.8折限时抢购活动来啦!4核8G企业云服务器仅2998元/3年,立即抢购>>>:9i0i.cn/aliyun

文章来源:互联网 作者: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的开发者们将拥有一个激动人心的一年。

相关文章

  • 解决java Graphics drawImage 无法显示图片的问题

    解决java Graphics drawImage 无法显示图片的问题

    这篇文章主要介绍了解决java Graphics drawImage 无法显示图片的问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-11-11
  • Java异或技操作给任意的文件加密原理及使用详解

    Java异或技操作给任意的文件加密原理及使用详解

    这篇文章主要介绍了Java异或技操作给任意的文件加密原理及使用详解,具有一定借鉴价值,需要的朋友可以参考下。
    2017-12-12
  • Lambda表达式的使用及注意事项

    Lambda表达式的使用及注意事项

    这篇文章主要介绍了Lambda表达式的使用及注意事项,主要围绕?Lambda表达式的省略模式?Lambda表达式和匿名内部类的区别的相关内容展开详情,感兴趣的小伙伴可以参考一下
    2022-06-06
  • Mybatis 一对多和多对一关联查询问题

    Mybatis 一对多和多对一关联查询问题

    这篇文章主要介绍了Mybatis 一对多和多对一关联查询问题,需要的朋友可以参考下
    2017-04-04
  • Java中多线程同步类 CountDownLatch

    Java中多线程同步类 CountDownLatch

    本篇文章主要介绍了Java中多线程同步类 CountDownLatch的相关知识,具有很好的参考价值。下面跟着小编一起来看下吧
    2017-05-05
  • mybatis学习笔记之mybatis注解配置详解

    mybatis学习笔记之mybatis注解配置详解

    本篇文章主要介绍了mybatis学习笔记之mybatis注解配置详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-12-12
  • 详解SpringBoot如何使用Redis和Redis缓存

    详解SpringBoot如何使用Redis和Redis缓存

    这篇文章主要为大家详细介绍了SpringBoot如何使用Redis和Redis缓存,文中的示例代码讲解详细,对我们学习SpringBoot有一定的帮助,需要的可以参考一下
    2022-06-06
  • Java与kotlin详细对比

    Java与kotlin详细对比

    这篇文章主要介绍了Java与kotlin详细对比,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-09-09
  • Spring?JPA使用CriteriaBuilder动态构造查询方式

    Spring?JPA使用CriteriaBuilder动态构造查询方式

    这篇文章主要介绍了Spring?JPA使用CriteriaBuilder动态构造查询方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-12-12
  • MyBatis多表查询和注解开发案例详解

    MyBatis多表查询和注解开发案例详解

    这篇文章主要介绍了MyBatis多表查询和注解开发,本文通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-05-05

最新评论

?


http://www.vxiaotou.com