微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

JavaParser:解析泛型返回类型

如何解决JavaParser:解析泛型返回类型

我有一个类,其类型参数 T 类似于此示例

public class Example<T>{
    T myMethod(T object) {
        return object;
    }

    public static void main(String[] args) {
        Example<String> myExample = new Example<>();
        myExample.myMethod("Test");
    }
}

在使用 JavaParser 分析上述示例中的 main 方法时,我可以使用 myExample.myMethod("Test") 解析 MethodCallExpr methodCall.resolve() 以获得 ResolvedMethodDeclaration调用 methodCall.resolve().getReturnType() 时,我得到一个 ClassOrInterfaceType (T) 实例。我的目标是确定 ClassOrInterfaceType 指代此特定 String 中的 ResolvedMethodDeclaration,以便我可以调用 getReturnType() 并获得结果 String。变量 object 的解析类型也是如此。理想情况下,我希望 JavaParser 在调用 MethodDeclaration 时给我以下 methodCall.resolve()

String myMethod(String object) {
    return object;
}

JavaParser 中是否有一些内置功能可以解析特定方法调用的类型并将它们替换为实际类型而不是类型参数?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。