关于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都引入了一种新的字节码格式),随着版本递增。
关于这个说法,有找到依据的欢迎补充~

你可能感兴趣的:(java,数据库,开发语言)