jvm 为什么Java类文件版本从45开始?

nafvub8i  于 2022-11-07  发布在  Java
关注(0)|答案(1)|浏览(105)

根据JVM规范:
JDK发行版1.0.2中的Oracle Java虚拟机实现支持45.0到45.3(含)的类文件格式版本。JDK发行版1.1.* 支持45.0到45.65535(含)范围内的类文件格式版本。对于k ≥ 2,JDK发行版1.k支持45.0到44+k.0(含)范围内的类文件格式版本。
https://docs.oracle.com/javase/specs/jvms/se7/html/jvms-4.html
我想知道,为什么他们从***45***开始进行版本控制,而不是从***1***或***0***开始?

ohfgkhjo

ohfgkhjo1#

为什么Java类文件版本从45开始?
在第一个公开发布的版本(Java 1.0.2)之前,Java还有其他版本。
Java最初是在1991年作为Oak编程语言出现的,1994年更名为Java,1996年首次公开发行。
可以肯定的是,Java的早期版本(预发布版本)可能使用的类文件版本低于45。在早期,开发人员可能对字节码指令集和类文件格式的其他方面做了大量修改。这需要定期“更新”类文件版本号。
以上内容主要是推测。关于Oak和Java 1.0之前的版本,公开的信息很少。然而,1993年的Oak specification文本表明,他们 * 已经 * 将Oak源代码编译成字节码,这些字节码存储在“.class”文件中,每个类一个。

相关问题