java jdk 1.4.1版本 与 jdk1.6的区别是? 求高手解答.
答案:1 悬赏:70 手机版
解决时间 2021-11-17 21:52
- 提问者网友:捧腹剧
- 2021-11-17 07:08
java jdk 1.4.1版本 与 jdk1.6的区别是? 求高手解答.
最佳答案
- 五星知识达人网友:佘樂
- 2021-11-17 07:21
在 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 多的强制类型转换。
只好在 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 多的强制类型转换。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯