1、事先编译好一个class文件。如:TestVersion.class
2、使用UltraEdit或Editplus打开class文件,我这里使用的editplus,如图:
3、打开时Encoding选择Hex viewer,以16进制方式显示
4、打开文件的内容例如以下:
5、仅仅看第一行数据,前面8个字节CA FE BA BE 是固定的。之后4个字节00 00 是次版本。次版本后面的4个字节00 33 是jdk的版本。如我这里使用的是jdk1.7
jdk版本相应关系例如以下:
版本 | 相应十进制 | jdk版本 |
---|---|---|
2E | 46 | jdk1.2 |
2F | 47 | jdk1.3 |
30 | 48 | jdk1.4 |
31 | 49 | jdk1.5 |
32 | 50 | jdk1.6 |
33 | 51 | jdk1.7 |
34 | 52 | jdk1.8 |