首先非常感谢您来到这里,
我最近需要实现一个功能模块,这个模块的功能和ecplise的大纲视图类似。
用户在JTextArea中连续编码,程序需要动态分析用户当前正在编辑的类,通过一个树形结构来显示这个类的结构。
这个树形结构以类名为根,根下节点为类属性和方法,甚至内部类,当用户键入一个新的成员时,就在树中插入一个相应的节点。
我只是一个大三学生,这个任务对我来说实在有点困难,所以希望得到您的指点或者创意。
我接收到的想法有:
1、通过JDK中提供的API实现一个代码的词法分析器和语法语义分析器;
2、获取JDK中javac的源码,阅读重用这些源码
3、动态编译源码,对字节码进行解析
以上这些想法只有第3个我有办法实现,但仍然太复杂,所以想听听您的建议,仅此而已,非常感谢!