一般来说:
jdk每一个版本都是向后兼容的,说以低版本的代码是可以运行在高版本的虚拟机上的。
而反过来则不可以,用1.6的编译器编辑的字节码文件是不可以运行在1.5版本的虚拟机上的。
但是今天我用Sun JDK1.6.0_13(这个是myeclipse自带的编译jdk版本)编写一个Tomcat的测试,我用的运行环境是jre1.8,结果jre1.8连最简单的Arrays.toString()都认不出来,提示Arrays cannot be resolved,中文意思是,数组无法解析
然后我更改下运行环境jre,改成jdkse-1.6,就不报错了,所以编译项目,最好还是统一编译工具JDK 和 编译环境JRE