上QQ阅读APP看书,第一时间看更新
1.1 代码执行过程概述
Java代码是如何被执行的?要回答这个问题并不容易。一般来说,代码的执行有两种模式:解释执行和编译执行。解释执行指的是解释器读取源代码,逐行解释代码,生成目标机器代码并执行;编译执行指的是编译器首先把源代码编译成目标机器代码,然后链接成可执行文件,最后由OS负责执行可执行文件。
Java代码的执行过程更为复杂。Java代码在执行之前首先编译成字节码[1](ByteCode,简称BC,是一种中间语言表示),然后由JVM执行字节码。字节码的执行是一个非常复杂的过程,涉及字节码的解释、编译,以及解释/编译代码的执行,这些工作均由JVM来完成。为了能够更好地了解JVM的工作原理,首先需要了解一下C、C++语言的编译执行过程。
本节主要介绍程序的执行方式,后文再详细介绍不同语言的执行过程。