Javac

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

Javac是什么

Javac是一种编译器,把java源代码语言转化成JVM能够识别的一种语言,然后由JVM将JVM语言再转化成这个机器能够识别的机器语言。

 

Javac编译器的基本结构

Javac功能

Javac_第1张图片

首先:语法分析

语法分析的结果就是从源代码中找出一些规范化的Token流,就像人类语言中,给你一句话,你要能分辨出哪些是词语,那些是标点符号,哪些是动词,哪些是名词等。

 

其次:语义分析

将复杂的语法转化为简单的语法

 

最后:通过字节码生成器生成字节码

就是讲一个数据结构转化为另一个数据结构,就像将所有的中文词语翻译成英文单词后,按照英文语法组装成英文语句。

 

Javac组件

Javac_第2张图片

Javac主要有4个模块,分别是词法分析器,语法分析器,语义分析器和代码生成器。

 

Javac工作原理分析

1.词法分析器:

 

2.语法分析器

 

3.语义分析器

 

4.代码生成器

转载于:https://my.oschina.net/aslanjia/blog/1509479

你可能感兴趣的:(Javac)