java程序运行的是编译后的字节码文件。编译器将源代码编译成字节码,然后由java虚拟机来解释执行字节码文件。

源代码编译由javac编译器来编译,具体流程如下:

 

词法分析:判断是否含有关键字、标识符、常数、分界符、运算符等。

语法分析:检查是否符合java语言规范,如if后面是否为布尔型表达式。

语义分析:把复杂的语法转换成更简单的语法,最后生成一棵抽象的语法树。

字节码生成:生成符合java虚拟机规范的字节码。

参考文章:java在编译期和运行期都做了什么 - 假程序猿 - 博客园

Logo

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

更多推荐