快速业务通道

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

作者 佚名技术 来源 Linux系统 浏览 发布时间 2012-05-10

在 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 多的强制类型转换.

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号