前言:神奇的class的设计,造就了JVM的成功。
首先,我们应该知道很多语言都可以在JVM上运行,而且JVM有了不同操作系统的实现,看样子使得我们所使用的语言也是跨平台的了。
▲JVM多语言、多平台支持
我们以Java为例,当从编码阶段,到编译,再到JVM中运行,每个阶段执行过程如下图所示。我们写一个Hello.java,我们用javac或者某些ide编译后会产生Hello.class文件,当运行的时候JVM会将class文件加载进来,经过一系列操作,最终体现到操作系统或者硬件层面。
▲Java从编码到运行过程
从上图我们可以看到,JVM只