感谢支持
我们一直在努力

Linux 下JDK1.4与JDK1.6的区别实例解析

在 Linux 下用 jdk 1.6 写了个程序,编译打包后,一切正常,拿到 win 下,同样是 1.6 的jdk,居然说什么不兼容的编译类型,非法的 magic number.


只好在 Linux 下用 jdk 1.4.2 这个经典的版本重新编译一下,结果就发现了下面两个不同:1. 在 1.4.2 中, assert 是 keyword ,不可以 assert (boolean expression):(String) 这样来用,而在 1.6 中是可以的。


在 1.4.2 下编译时,会给出warning: as of release 1.4, assert is a keyword, and may not be used as an identifier,并且会报错,说是分号的错误(其实是编译器把 assert 当作 identifier 来处理报的错)。


2. 在 1.4.2 中,不可以如下这样来 override clone() 方法


public NewClass clone(){


     …


return NewClass;


}


这在 1.6 中是允许的,也是方便的。


在 1.4.2 中只能


public Object clone(){



return …;


}


于是就有了 N 多的强制类型转换。

赞(0) 打赏
转载请注明出处:服务器评测 » Linux 下JDK1.4与JDK1.6的区别实例解析
分享到: 更多 (0)

听说打赏我的人,都进福布斯排行榜啦!

支付宝扫一扫打赏

微信扫一扫打赏