如何以编程方式从这样的方法中的语句中获取字段类型:
Foo foo = getSomeFoo();
如果是字段,我可以知道元素的类型。
你需要使用 Eclipse 的 AST
ICompilationUnit icu = ...
ASTParser parser = ASTParser.newParser(AST.JLS3);
parser.setResolveBindings(true);
parser.setSource(icu);
CompilationUnit cu = (CompilationUnit) parser.createAST(null);
cu.accept(new ASTVisitor() {
@Override
public boolean visit(VariableDeclarationStatement node) {
System.out.println("node=" + node);
System.out.println("node.getType()=" + node.getType());
return true;
}
});
您可以foo
通过调用来获取对象的类foo.getClass()
。
如果您有一个类(或对象)并希望以编程方式获取该类上特定方法的返回类型,请尝试以下操作:
Class
类/对象的对象getMethod()
方法并返回一个 Method 对象getReturnType()
在 Method 对象上调用方法