11月6日,Java6相关的主要的JSR都已经通过,Java6的正式发布已经离我们越来越近。想起这些,稍微有点悲哀。在实际工作中,Java5的主要特性尚未得到很好的普及(除了很多开源和非开源的框架中大量使用了Annotations之外),Java6能得到Java1.2,或者Java1.4那样的关注吗?

现在还记得大概一年半以前将自己用1.5的语法实现的框架改回用1.4语法实现的心情。原因是公司里的java开发人员对1.5的某些语法的不接受(现在估计要好很多)。希望Java6给我们带来的新元素能够比较快速的得到大众的追捧并且在工作中得到使用。

下面简单的列出Java5和Java6的主要新特性。
Java5:
1。泛型
2。枚举类型
3。自动类型包装和解包装(autoboxing & unboxing)
4。变长参数
5。Annotations
6。新的迭代语句
7。静态引入
8。新的格式化方法
9。新的线程模型和并发库

Java6:
1。引入了一个支持脚本引擎的新框架
2。UI的增强
3。对Web Service支持的增强(JAX-WS 2.0 和 JAXB 2.0)
4。一系列新的安全相关的增强(本地敏感资源服务 Locale Sensitive Services SPI)
5。JDBC 4.0
6。Compiler API
7。通用的Annotations支持
评论
jameswei 2007-03-10
Java5:
1。泛型
2。枚举类型
3。自动类型包装和解包装(autoboxing & unboxing)
4。变长参数
8。新的格式化方法


Java6:
现在机器还是安装的JDK1.5_11的,呵呵.
lbfhappy 2007-03-09
我是JDK正式版测试的.呵呵
你还真牛,可以让JDKcrash
歆渊 2007-03-09
lbfhappy 写道
complystill 写道
floating 写道
complystill 写道
Java5的成熟度比1.4差的不是一点半点.
JDK6原定今年秋天就正式发布的, 现在还在筹备.
功能加了,用起来舒服了,bug其实也多了.

成熟度这个说法很模糊,从我个人的角度,并没有感觉到5有什么不成熟的(除了Annotations有待进一步增强)。我在用5的时候,也没有感觉到有什么很影响使用的bug。5在改善java语言的易用性上开了个好头,在6里也得到了进一步的增强,这些都应该说是Java进步的积极因素。

可能你没遇到, Applet里的文本框不能从系统剪贴板paste文字, 到1.5.0_08才解决.
编译含Generic的特定类代码javac会crash, 一直没有改观, 连最近的1.6也还没有解决. 搞得我只能javac和eclipse jdtCompiler同时用, 写的ant脚本也离不开eclipse.


不是吧,我下载了你的代码,在我这里编译很正常啊,没有crash啊,是不是你的方法错了,或者你的电脑本身有毛病哦


我发这个帖的时候用的还是beta的1.6, final release (b105)以后的JDK6已经好了.
你用的哪个版本JDK试的?
Cecily 2007-03-09
泛型倒是用过,其他的还真的没机会用呢
lbfhappy 2007-03-09
complystill 写道
floating 写道
complystill 写道
Java5的成熟度比1.4差的不是一点半点.
JDK6原定今年秋天就正式发布的, 现在还在筹备.
功能加了,用起来舒服了,bug其实也多了.

成熟度这个说法很模糊,从我个人的角度,并没有感觉到5有什么不成熟的(除了Annotations有待进一步增强)。我在用5的时候,也没有感觉到有什么很影响使用的bug。5在改善java语言的易用性上开了个好头,在6里也得到了进一步的增强,这些都应该说是Java进步的积极因素。

可能你没遇到, Applet里的文本框不能从系统剪贴板paste文字, 到1.5.0_08才解决.
编译含Generic的特定类代码javac会crash, 一直没有改观, 连最近的1.6也还没有解决. 搞得我只能javac和eclipse jdtCompiler同时用, 写的ant脚本也离不开eclipse.


不是吧,我下载了你的代码,在我这里编译很正常啊,没有crash啊,是不是你的方法错了,或者你的电脑本身有毛病哦
ronghai 2007-03-09
几乎没有用到什么新的特新。
hbcui1984 2007-03-09
floating 写道
我觉得
引用
8。新的格式化方法

应该也使用的比较多才对啊。例如:我们在1.4版本上完成一个数字格式化输出的时候,需要:
double x = 10000.0 / 3.0;
NumberFormat formatter = NumberFormat.getNumberInstance();
formatter.setMaximumFractionDigits(4);
formatter.setMinimumIntegerDigits(6);
String s = formatter.format(x); // the string "003,333.3333"

在1.5下面只需要:

double x = 10000.0 / 3.0;
String s = String.format("%,012.4f",x);

就可以实现同样的效果。



郁闷了,原来我一直用的格式化数字的方法都是1.4版的啊....
ray_linn 2007-03-09
所有新特性都用了,在我写C#的时候用了.
magic_seek 2007-03-09
象我这样的人估计是跟不上潮流了,从1.1到1.4感觉变化还不是很大,自1.5后发现好多名词居然不认识,不过也懒得去学了。
chenxu 2007-03-09
个人感觉泛型和annotaion才是很有用的,其他的都不是关键的
。目前很多的应用服务器都只支持1。4的,比如weblogic和websphere
,所以还都是在使用1,4。
个人觉得 ,使用稳定的版本是最好的。一般比最新的版本低一个版本号的就比较合适
qingjian 2007-03-08
我怎么感觉 都没有用到 惭愧
宏基小键盘 2007-03-08
Morgan0916 写道
俺现在还只能用1.4呢,眼巴巴的等着IBM的RAD升级呢


一样一样一样的
jjx 2007-03-08
jdbc 4.0 是否真的包含在j2se 6.0中?

今天试了省略 Class.forName("xxx.xxx") 不成功,sql 标注也没有发现java.sql.BaseQuery这个接口
cddcdd 2007-03-08
我刚学的时候都是用1.4的,后来才装了1.5,1.6
用哪个都无所谓啊,以后都要跟着项目变
haihai 2007-03-07
到现在一直在用1.4,公司也不让用java5,没办法,java6都出来了
zhipingch 2006-12-07
最终取决于项目的要求,学习新技术是为了自己。但是拿人钱财,还是得替人卖命。呵呵,说笑了
超级莱鸟 2006-12-07
String.format()和C里面的sprintf()几乎要类似了吧
System.out.printf();也和c里面的printf()几乎类似了.

Generics能用的地方用一下挺好,不要勉强用.
ggyy 2006-12-07
Patrick He 写道
ggyy 写道
我们对1.5的特性是要求尽量少用.要兼容1.4
个人感觉1.5只是添加了一些语法糖,至于内存模型这些一般开发体会不到.觉得Java应该对类库进行精简


generics 可不是语法糖


generics还是没有办法实现GP,感觉就是免去了以前手工转换的工作.
RyanPoy 2006-12-06
1。泛型
3。自动类型包装和解包装(autoboxing & unboxing)
5。Annotations
6。新的迭代语句
就用到这几个,感觉有些东西习惯了1.4的用法.不愿意改了.
Patrick He 2006-11-29
JavaVM 写道
我到今天才用到

9。新的线程模型和并发库

惭愧啊。


这个就是 Doug Lee 原来自己弄的一套东东,现在成为 Java built-in 而已了。
floating
搜索本博客
最近加入圈子
存档
最新评论