Java JDT查找方法

时间:2014-11-06 14:16:28

标签: java eclipse-jdt

我正在使用带有Java JDT的访问者系统来读取源代码。我希望找到一个方法调用,例如:

System.out.println(i);

我理解访客模式,所以我需要这样的东西:

    public boolean visit(MethodPattern node) {

//code here

}

但我不知道节点的类型应该是什么,以便我可以访问方法调用中的信息。例如第一个示例中的“i”或以下示例中的s:

foo(String s)

1 个答案:

答案 0 :(得分:0)

我不知道您从哪里获取方法签名visit(MethodPattern node)。但是您可以覆盖visit(MethodInvocation node)以便能够检查方法调用。然后,您可以使用the passed node来查询方法参数等。

public class MyVisitor extends org.eclipse.jdt.core.dom.ASTVisitor {

    public boolean visit(MethodInvocation node) {
        List<?> arguments = node.getArguments();
        // do something with the arguments, etc.
    }
}