[讨论] javac的符号表管理
zking3
2015-02-02
最近在读javac
版本是这里http://download.java.net/openjdk/jdk7/取到的javac源码 openjdk-7-fcs-src-b147-27_jun_2011.zip 这里是网上的一点资料(http://book.douban.com/subject/1268618): 符号表中存储的是与符号(Symbol)有关的属性:这些属性有: 一:符号的名字:Name 二:符号的种类:Kind ,例如:表示包,表示类型的符号(类,接口,type),表示方法的符号,表示变量的符号。 三: 符号的类型:type,例如:整形。无符号整形 ,布尔型 数组型。 还是不太明白: Symbol Symtab Names Type Kind 这五个类是干嘛的。 我理解的误区有: 比如上面二和三 那两句话,kind和type感觉重复了 都是区分不同的种类(或者说类型)的吧 比如说有这么一个类:他会产生的符号表是怎么样的。 package com.pg; public class Person { private int age; public int add(int x, int y) { return x + y; } } 小白问题,求好人相助。先在这里谢谢了 |
|
jjzhk
2015-02-15
javap -verbose 看一下就能看出来啊
|
|
zking3
2015-02-18
jjzhk 写道 javap -verbose 看一下就能看出来啊
这个看到的是生成后的。不是过程中的。 |