クラス レベルの変数宣言だけを取得したい。javaparser を使用して宣言を取得するにはどうすればよいですか?
public class Login {
private Keyword browser;
private String pageTitle = "Login";
}
javaparser を使用すると、変数「browser」の詳細を取得する必要があります。たとえば、ブラウザのタイプは「KeyWord」です。
クラス レベルの変数宣言だけを取得したい。javaparser を使用して宣言を取得するにはどうすればよいですか?
public class Login {
private Keyword browser;
private String pageTitle = "Login";
}
javaparser を使用すると、変数「browser」の詳細を取得する必要があります。たとえば、ブラウザのタイプは「KeyWord」です。
あなたの質問をよく理解できませんでした - クラスのすべてのフィールドメンバーを取得しますか? もしそうなら、あなたはこのようにすることができます:
CompilationUnit cu = JavaParser.parse(javaFile);
for (TypeDeclaration typeDec : cu.getTypes()) {
List<BodyDeclaration> members = typeDec.getMembers();
if(members != null) {
for (BodyDeclaration member : members) {
//Check just members that are FieldDeclarations
FieldDeclaration field = (FieldDeclaration) member;
//Print the field's class typr
System.out.println(field.getType());
//Print the field's name
System.out.println(field.getVariables().get(0).getId().getName());
//Print the field's init value, if not null
Object initValue = field.getVariables().get(0).getInit();
if(initValue != null) {
System.out.println(field.getVariables().get(0).getInit().toString());
}
}
}
このコード例は、あなたのケースで印刷されます: Keyword browser String pageTitle "Login"
これが本当にあなたの質問であったことを願っています...そうでない場合は、コメントしてください。