我是Java的新手。我知道只要启动 Java 程序,就会创建 JVM 的实例。但我想知道为什么必须创建 JVM 实例。
在java中,通常创建一个实例来固定类同样存在的位置。 JVM 实例是否也指向任何类?
除了用于运行程序之外,我真的不知道 JVM 实例的用途。
有人能解释一下原因吗?
答案 0 :(得分:4)
在Java中,编写执行程序的过程与C / C ++非常相似,但有一个重要的区别,它允许我们编写与机器无关的Java程序。
使用解释器,所有Java程序都被编译为称为字节代码的中间级别。 我们可以在安装了Java运行时环境的任何计算机上运行已编译的字节代码。
运行时环境由虚拟机及其支持代码组成。
可能你可以看一下这个帖子来解决你的疑惑:
How is Java platform-independent when it needs a JVM to run?
答案 1 :(得分:1)
JVM代表 JAVA虚拟机它是机器相关程序,它将实际读取您编译的代码并将该代码转换为与机器相关的指令,从而执行该特定程序。可能这会澄清你的问题
答案 2 :(得分:0)
JVM将您的字节代码转换为机器相关指令,以便您的硬件理解并执行这些指令。 JVM附带JDK(Java Development Kit)。
是的,为了回答您的问题,JVM提供了一个运行代码的平台。除此之外,它还有其他一些功能,如内存管理,垃圾收集,内部线程管理等等。
看看this。你会明白的。