我想解析一个项目,其中一些类具有内部类。如何使用 eclips JDT 提取内部类名称其他信息?
问问题
1152 次
2 回答
4
可以遍历Compilation
Java类的单元,访问TypeDeclaration
AST节点。然后可以使用下面的代码检查它是否不是顶级类,即内部类。
public boolean visit(TypeDeclaration typeDeclarationStatement) {
if (!typeDeclarationStatement.isPackageMemberTypeDeclaration()) {
System.out.println(typeDeclarationStatement.getName());
// Get more details from the type declaration.
}
return true;
}
要获取匿名内部类,也可以使用以下代码:
public boolean visit(AnonymousClassDeclaration anonyomousClassDeclaration) {
System.out.println(anonyomousClassDeclaration.toString());
return true;
}
使用 JDT 进行类遍历的详细信息可以从下面的链接中找到:
于 2013-04-01T13:21:36.570 回答
1
如果您有 IType 实例(类型),则可以通过以下方式查询内部类
type.getTypes();
这将为您提供此类型声明的直接成员类型的数组。
于 2013-04-04T07:48:06.947 回答