码迷,mamicode.com
首页 > 编程语言 > 详细

深入理解java虚拟机-第十章-早期(编译期)优化

时间:2014-12-27 16:06:38      阅读:154      评论:0      收藏:0      [点我收藏+]

标签:

第10章  早期(编译期)优化

 

javac编译过程:

  1、解析与填充符号表过程

  词法、语法分析 将源代码的字条流转变为标记(Token)集合。如“int a = b + 2”这名代码包含了6个标记,分别是int a = b + 2

  填充符号表

  2、注解处理器

  3、语义分析与字节码生成

  标注检查 包括诸如变量使用前是否已被声明、变量与赋值之 间的数据类型是否能够匹配,还有一个重要的动作称为常量折叠

  数据及控制流分析  对程序上下文逻辑更进一步的验证,它可以检查出诸如程序局部变量在使用前是否有赋值、方法的每条路径是否都有返回值、是否所有的受查异常都被正确处理了第问题。

  解语法糖  泛型、变长参数、自动装箱/拆箱等

    java中的泛型只在程序源码中存在,在编译后的字节码中就已经替换为原来的原生类型了,并且在相应的地方插入强制类型转换代码。

  字节码生成

 

深入理解java虚拟机-第十章-早期(编译期)优化

标签:

原文地址:http://www.cnblogs.com/zyzl/p/4188461.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!