2 a552298242 a552298242 于 2016.09.19 21:05 提问

请问下java各个版本之间的兼容性是怎么样的

这学期学习java时,老师用的jdk版本是1.6,但是我考虑到毕业是几年后的事情了,因此
装了1.8版本的jdk提前预习下,请问下如果我设置了compiler compliance level的版本
为1.6,那吗我在1.8上写的东西能在老师1.6版本上跑吗

4个回答

lsl_Wislove
lsl_Wislove   2016.09.19 21:33
已采纳

有很多高版本的新特性,也是1.8的特性不能在低版本下面运行。比如1.8新有特性:1.接口里面可定义一些默认方法(1.8的接口变得挺多的,1.8的新接口特性在低版本运行不了) ,2. Lambda表达式。 我遇到的大概就这两个,总的来说都可以运行。就是新的特性不可以

wojiushiwo945you
wojiushiwo945you   Ds   Rxr 2016.09.19 21:06

高版本兼容低版本的,如果你本地设置的最低版本是1.6是可以在其他环境下兼容运行的。

guwei4037
guwei4037   Ds   Rxr 2016.09.19 22:07

可以,你安装的高版本可以兼容低版本的,反过来不行。

oSanYeCao1234567
oSanYeCao1234567   Ds   Rxr 2016.09.19 22:10

肯定是不行的,比如你在1.8中写的代码使用1.8版本的新特性(新添加的方法或者类),然后放到1.6版本中肯定是编译失败的(找不到方法或类)

这样的一般是向下兼容的,即高版本的兼容低版本的JDK

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!