[讨论] 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 看一下就能看出来啊



这个看到的是生成后的。不是过程中的。
Global site tag (gtag.js) - Google Analytics