关于JAVA中字节码文件版本号、产品版本号及开发版本号的关系

目录

关于字节码版本

以二进制打开字节码文件:

如上图中第5-8标识(圈起来的)的即字节码版本号
十六进制: 34

= 十进制: 52

= jdk 8

对应关系清单

Java字节码文件版本号 JDK版本 产品版本号
· 1.0.x Java 1.0.x
45 1.1.x Java 1.1.x
46 1.2.x Java 1.2.x
47 1.3.x Java 1.3.x
48 1.4.x Java Java 2 Platform, Standard Edition (J2SE) 1.4.x
49 5.x Java 2 Platform, Standard Edition (J2SE) 5.0
50 6.x Java 2 Platform, Standard Edition (J2SE) 6.0
51 7.x Java SE 7
52 8.x Java SE 8
53 8.x Java SE 9
54 8.x Java SE 10
55 8.x Java SE 11
56 8.x Java SE 12
57 8.x Java SE 13
58 8.x Java SE 14
59 8.x Java SE 15
60 8.x Java SE 16
61 8.x Java SE 17
62 8.x Java SE 18

关于字节码格式说明的资料

Java SE 15版:
https://docs.oracle.com/en/java/javase/15/docs/specs/class-file-format.html
Java SE 14版:
https://docs.oracle.com/en/java/javase/14/docs/specs/class-file-format.html
Java SE 13版:
https://docs.oracle.com/en/java/javase/13/docs/specs/class-file-format.html
Java SE 12版:
https://docs.oracle.com/en/java/javase/12/docs/specs/class-file-format.html
Java SE 11版:
https://docs.oracle.com/en/java/javase/11/docs/specs/class-file-format.html
Java SE 10版:
https://docs.oracle.com/javase/specs/jvms/se10/html/jvms-4.html
Java SE 9版:
https://docs.oracle.com/javase/specs/jvms/se9/html/jvms-4.html
Java SE 8版:
https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-4.html

这些文档提供了Java字节码格式的详细描述,包括字节码文件结构、常量池、指令集、异常处理、调试信息和属性等方面的内容。如果你需要深入了解Java字节码的内部结构和工作原理,这些文档将会非常有用。

关于这些版本号

一种说法1.0没有引入字节码版本号(个人觉得不靠谱),从1.1 开始引入版本号45,之后每各版本标识不同的字节码格式(每个新版本的JDK都引入了一种新的字节码格式),随着版本递增。

关于这个说法,有找到依据的欢迎补充~

相关推荐
@zulnger15 分钟前
读写Excel
开发语言·python·excel
程序媛Dev22 分钟前
用这个开源AI,实现了与数据库的“自然语言对话”
数据库·人工智能
带土124 分钟前
9. C++ 套接字(Socket)
开发语言·c++
v***59831 小时前
redis 使用
数据库·redis·缓存
molaifeng7 小时前
Go 语言如何实现高性能网络 I/O:Netpoller 模型揭秘
开发语言·网络·golang
韩师学子--小倪7 小时前
fastjson与gson的toString差异
java·json
Drawing stars7 小时前
JAVA后端 前端 大模型应用 学习路线
java·前端·学习
崇山峻岭之间8 小时前
Matlab学习记录33
开发语言·学习·matlab
Evand J8 小时前
【2026课题推荐】DOA定位——MUSIC算法进行多传感器协同目标定位。附MATLAB例程运行结果
开发语言·算法·matlab
nbsaas-boot8 小时前
SQL Server 存储过程开发规范(公司内部模板)
java·服务器·数据库