源码:It is a book
- 词法分析
把源文件的字符流转换成记号流
得到一个个的单词
如:It,is,a,book
- 语法分析
- 根据语法规则识别出记号流中的结构(短语、句子),并构造出一棵能够正确反映该结构的语法树
- 检查这些单词组成的句子是否符合语法规则;主要是对结构的检查
如:It is a book 是符合规则的
is book a It 就是不符合规则的
- 语义分析
分析整个句子的含义
语义正确
int i = 0 (正确)
int i = “abc” (错误)
是否有死循环?方法是否有返回语句?…
- 总结
分类 | 区别 | 说明 |
---|---|---|
词法分析 | 识别单词 | |
语法分析 | 整体结构是否符合规则 | |
语义分析 | 含义是否符合规则 | 如:int a = “xyz”,类型不匹配 |