博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
javac编译原理
阅读量:7239 次
发布时间:2019-06-29

本文共 387 字,大约阅读时间需要 1 分钟。

  javac编译器的作用就是将符合java语言规范的源代码转化成符合java虚拟机规范的java字节码

  经历:词法分析器->语法分析器->语义分析器->编译字节码 四个过程生成字节码文件

  1、词法分析:javacPaser根据java语言规范判断出哪些是动词,名词,标点符号之类,生成规范的token流。将这个类中的所有关键词匹配到Token类中的一项

  2、语法分析:将词法分析器生成的Token流转化成更加结构化的语法树,也就是将一个个单词组成成一句话,一个完整的句子。

  3、语义分析:语法分析生成的结构书比较粗糙,与字节码文件是有差距的。通过语义分析器来对其优化:添加默认构造函数,常量合并,变量是否初始化,异常是否抛出,每条语句是否必达,去除语法糖等

转载于:https://www.cnblogs.com/volare/p/8117800.html

你可能感兴趣的文章
Leetcode:258.Add Digits
查看>>
hoj1440 Knight Moves
查看>>
property干嘛的
查看>>
在香港五星级酒店里‘赏’早餐
查看>>
[转载] New Concept English 1——Lesson 5 Nice to meet you
查看>>
Java笔试面试
查看>>
iOS开发中遇到的一些问题以及解决办法总结
查看>>
【总结整理】内联框架
查看>>
Zabbix
查看>>
Unity 3D:控制相机旋转、移动、缩放等功能
查看>>
CALayer的m34 - 三维透视效果
查看>>
hdu 6243,6247
查看>>
C#操作Excel文件
查看>>
uchome在IE6下不居中和发布按钮不显示的解决办法
查看>>
iOS IPv6兼容支持和IPv6审核被拒收集整理
查看>>
Week01-作业
查看>>
健身:肩部训练
查看>>
win10安装git,打开git bash闪退
查看>>
学习笔记之GitHub
查看>>
Linux内核中断引入用户空间(异步通知机制)【转】
查看>>