为什么 Java 研发系统需要 JVM?
JVM 解释的是类似于汇编语言的字节码,需要一个抽象的运行时环境。同时,这个虚拟环境也需要解决字节码加载、自动垃圾回收、并发等一系列问题。JVM 其实是一个规范,定义了 .class 文件的结构、加载机制、数据存储、运行时栈等诸多内容,最常用的 JVM 实现就是 Hotspot。
对你 JVM 的运行原理了解多少?
JVM 的生命周期是和 Java 程序的运行一样的,当程序运行结束,JVM 实例也跟着消失了。JVM 处于整个体系中的核心位置,关于其具体运行原理,我们在下面的课时中详细介绍。
我们写的 Java 代码到底是如何运行起来的?
一个 Java 程序,首先经过 javac 编译成 .class 文件,然后 JVM 将其加载到元数据
区,执行引擎将会通过混合模式
执行这些字节码。执行时,会翻译成操作系统相关的函数。JVM 作为 .class 文件的黑盒存在,输入字节码,调用操作系统函数。
过程如下:Java 文件->编译器>字节码->JVM->机器码。
更多实战项目和面试题尽在公众号“源码评测”