【Java】查看class文件的jdk编译版本的两种方式

一、使用文本编辑工具EditPlus

使用EditPlus打开该class文件,字符集选择16进制(Hex viewer)。

仅看第一行数据,前面8个字节CA FE BA BE是固定的。

之后4个字节00 00 是次版本。

次版本后面的4个字节00 34 就是jdk版本。

jdk版本与16进制对照关系如下:

jdk版本 16进制
jdk1.5 31
jdk1.6 32
jdk1.7 33
jdk8 34

二、使用javap命令实现

cmd进入class文件所在目录后,运行以下命令

bash 复制代码
javap -v ParallelMultiInstanceBehavior.class

我们只需要看major version的值是多少(它的值是十进制数字)。

jdk版本与十进制对应关系如下:

HEX 十进制 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 jdk8
35 53 jdk9
36 54 jdk10
37 55 jdk11
38 56 jdk12
39 57 jdk13
相关推荐
公贵买其鹿1 分钟前
List深拷贝后,数据还是被串改
java
PieroPc3 分钟前
Python 写的 智慧记 进销存 辅助 程序 导入导出 excel 可打印
开发语言·python·excel
2401_857439693 小时前
SSM 架构下 Vue 电脑测评系统:为电脑性能评估赋能
开发语言·php
SoraLuna3 小时前
「Mac畅玩鸿蒙与硬件47」UI互动应用篇24 - 虚拟音乐控制台
开发语言·macos·ui·华为·harmonyos
xlsw_3 小时前
java全栈day20--Web后端实战(Mybatis基础2)
java·开发语言·mybatis
神仙别闹4 小时前
基于java的改良版超级玛丽小游戏
java
Dream_Snowar4 小时前
速通Python 第三节
开发语言·python
黄油饼卷咖喱鸡就味增汤拌孜然羊肉炒饭4 小时前
SpringBoot如何实现缓存预热?
java·spring boot·spring·缓存·程序员
暮湫5 小时前
泛型(2)
java
超爱吃士力架5 小时前
邀请逻辑
java·linux·后端