首先,为了了解J2SE(TM) 5.0的新的语言特性,你需要下载新版的JDK,在这里可以找到 下载链接:http://java.sun.com/j2se/1.5.0/download.jsp。当然,如果你已经有过手 动配置Java环境的经历,我也建议你使用一个支持J2SE(TM) 5.0的IDE,推荐Eclipse SDK 3.1 M4,或者NetBeans IDE 4.0。两个都是开源免费的,且很容易找到(Eclipse不 用说了,NetBeans IDE 4.0有与JDK 5.0 Update 1的捆绑版)。
说点题外话,Java的版本号自从1.2开始,似乎就多少显得有点蹩脚。从1.2版本开始, Java (J2SE)被称作Java 2,而不是Java 1.2,现在则显得更加离奇:Java(TM) 2 Platform Standard Edition 5.0或者J2SE(TM) 5.0,而内部的版本号还是1.5.0。那么 到底是1、2、还是5呢?来看看Sun官方网站是怎么说的:
从Java诞生至今已有9年时间,而从第二代Java平台J2SE算起也有5个年头了。在这样的 背景下,将下一个版本的版本号从1.5改为5.0可以更好的反映出新版J2SE的成熟度、稳 定性、可伸缩性和安全性。
好吧,现在我们将面对如下一些名称,而它们指的基本上是同一个东西:
Tiger
Java(TM) 2 Platform Standard Edition 5.0
J2SE(TM) 5.0
Java version 1.5.0
…
在本文中,为了方便起见,我将统一使用J2SE(TM) 5.0这个名称。
如果你对Java各个版本的代号感兴趣,就像这里的"Tiger",可以参考如下网址: http://java.sun.com/j2se/codenames.html。透露一点:Java下一个版本(6.0)的代 号是"Mustang"野马,再下一个版本(7.0)的代号是"Dolphin"海豚。
[概述]
J2SE(TM) 5.0引入了很多激进的语言元素变化,这些变化或多或少减轻了我们开发人员 的一些编码负担,其中的大部分也必然会被应用到即将发布的J2EE(TM) 5.0中。主要的 新特性包括:
1- 泛型
2- 增强的for循环
3- 自动装箱和自动拆箱
4- 类型安全的枚举
5- 可变长度参数
6- 静态引入
7- 元数据(注解)
8- C风格的格式化输出
这当中,泛型、枚举和注解可能会占用较大的篇幅,而其余的因为用法相当直截了当, 抑或相对简单,我就稍作介绍,剩下的留给读者去思考、去探索了。
[泛型]
泛型这个题目相当大,大到完全可以就这个话题写一本书。有关Java是否需要泛型和如 何实现泛型的讨论也早就在Java社群广为流传。终于,我们在J2SE(TM) 5.0中看到了 它。也许目前Java对泛型的支持还算不上足够理想,但这一特性的添加已经足以让我们 欣喜一阵了。
在接下来的介绍中,我们会了解到:Java的泛型虽然跟C++的泛型看上去十分相似,但其 实有着相当大的区别,有些细节的东西也相当难以掌握(至少很多地方会跟我们的直觉 背道而驰)。可以这样说,泛型的引入在很大程度上增加了Java语言的复杂度,对初学 者尤其是个挑战。我们一点一点往里挖。
首先我们来看一个简单的使用泛型类的例子:
ArrayList aList = new ArrayList();
aList.add(new Integer(1));
// ...
Integer myInteger = aList.get(0);
1
2
3
4
下一页>>
|