详见:https://blog.csdn.net/tjiyu/article/details/53748965
JVM规范定义了Class文件结构格式,但没有定义如何从java程序文件转化为Class文件,所以不同编译器可以有不同实现。
从javac编译器源码来看,其编译过程可以分为3个子过程:
1、解析与填充符号表过程:解析主要包括词法分析和语法分析两个过程;
2、插入式注解处理器的注解处理过程;
3、语义分析与字节码的生成过程;
详见:https://blog.csdn.net/tjiyu/article/details/53748965
JVM规范定义了Class文件结构格式,但没有定义如何从java程序文件转化为Class文件,所以不同编译器可以有不同实现。
从javac编译器源码来看,其编译过程可以分为3个子过程:
1、解析与填充符号表过程:解析主要包括词法分析和语法分析两个过程;
2、插入式注解处理器的注解处理过程;
3、语义分析与字节码的生成过程;