JVM ,是可运行 Java 代码的虚拟计算机 ,它包括一套字节码指令集、一组寄存器、一个栈、 一个垃圾回收,堆和一个存储方法域。JVM 是运行在操作系统之上的,它与硬件没有直接的交互。

Java 源文件,通过编译器,能够生产相应的.Class 文件,也就是字节码文件;字节码文件又通过 Java 虚拟机中的解释器,编译成特定机器上的机器码 。

① Java 源文件->编译器->字节码文件。

② 字节码文件->JVM->机器码。

每一种平台的解释器是不同的,但是实现的虚拟机是相同的,这也就是 Java 为什么能够跨平台的原因。当一个程序从开始运行,此时虚拟机就开始实例化,启动多个程序就会存在多个虚拟机实例。程序退出或者关闭,则虚拟机实例消亡,多个虚拟机实例之间数据不能共享。

 

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐