是否可以通过 AST 获取类声明的全部信息(使用modifiers
、 extends
和)???implements
我想得到这样的结构:
[ modifiers ] class ClassName [ extends SuperClassName ] [ implements InterfaceNames ] {
谢谢提供信息!
在 Java 中,很难获得价值,但您可以获得以下内容:-
Class Modifiers
:- 如果您能够使该类的对象成为公共类,否则其他人
Extends
:- 您必须检查覆盖的方法。
Implements
:- 你必须检查类中的抽象方法才能知道。否则该类将是 Abstract class
。
你不需要这样的反思。
使用java.lang.Class API
Class clsObj = Class.forName("yourclas");
方法如,
getModifiers();
getSuperClass();
getInterfaces();
正如 TheWhiteRabbit 所提到的,您可以从java.lang.Class类开始使用反射,或者您可能正在寻找诸如antlr之类的代码解析器。请注意,您的问题似乎已在此处提出。