1

一部のクラスに内部クラスがあるプロジェクトを解析したいのですが、eclips JDT を使用して内部クラス名の他の情報を抽出するにはどうすればよいですか?

4

2 に答える 2

4

CompilationJava クラスのユニットをトラバースして、 TypeDeclarationAST ノードにアクセスできます。以下のコードを使用して、それが最上位クラス (内部クラス) でないかどうかを確認できます。

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 に答える