JVM之我们写的java代码是如何运行的?

平时开发的项目,有的是打成一个war包,放到Tomcat这样的容器里运行 。或者是打成一个jar包,通过JAVA -jar 的方式去运行 。大家有没有想过我们的项目是如何运行的呢?
首先编译器会把我们写的是一个个的类对象,如user.java,role.java等进行编译,编译成user.class,role.class等这样的字节码文件,这样的文件才是可以被运行的文件 。
【JVM之我们写的java代码是如何运行的?】接着就是JVM会把编译好的字节码对象加载到内存 。JVM的英文全称是Java Virtual machine,也就是Java虚拟机,我们文章的主角 。Java虚拟机就是一个虚拟的计算机,我们的项目就是在这上面运行的 。有了它,我们Java也就有了“一次编译,到处运行”的能力了 。
接着,最后一步,JVM就会通过字节码执行引擎,执行加载的字节码文件了 。如代码中有一个main方法,JVM就会从main方法开始执行里面的代码 。
基本的流程就是:编译-->加载-->运行 。如下图:

JVM之我们写的java代码是如何运行的?

文章插图




    推荐阅读