关于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都引入了一种新的字节码格式),随着版本递增。

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

相关推荐
小光学长37 分钟前
基于vue框架的防疫科普网站0838x(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
数据库
极限实验室43 分钟前
使用 Docker Compose 简化 INFINI Console 与 Easysearch 环境搭建
数据库·docker·devops
秋千码途1 小时前
小架构step系列08:logback.xml的配置
xml·java·logback
飞翔的佩奇1 小时前
Java项目:基于SSM框架实现的旅游协会管理系统【ssm+B/S架构+源码+数据库+毕业论文】
java·数据库·mysql·毕业设计·ssm·旅游·jsp
时来天地皆同力.1 小时前
Java面试基础:概念
java·开发语言·jvm
hackchen1 小时前
Go与JS无缝协作:Goja引擎实战之错误处理最佳实践
开发语言·javascript·golang
找不到、了2 小时前
Spring的Bean原型模式下的使用
java·spring·原型模式
阿华的代码王国2 小时前
【Android】搭配安卓环境及设备连接
android·java
YuTaoShao2 小时前
【LeetCode 热题 100】141. 环形链表——快慢指针
java·算法·leetcode·链表
铲子Zzz3 小时前
Java使用接口AES进行加密+微信小程序接收解密
java·开发语言·微信小程序