gpt4 book ai didi

具有通用类类型的 Java 反射 getDeclaredMethod()

转载 作者:搜寻专家 更新时间:2023-11-01 02:11:24 46 4
gpt4 key购买 nike

我在 A 类中有一个方法:

class Parameter {
...
}

class A {
private <T extends B> void call(T object, Parameter... parameters){
...
}
}

现在我想用反射来获取方法“call”,

A a = new A();
// My question is what should be arguments in getDeclaredMethod
//Method method = a.getClass().getDeclaredMethod()

谢谢。

最佳答案

它们应该是 BParameter[] , 自 BerasureT可变参数作为数组实现:

Method method = a.getClass().getDeclaredMethod(
"call",
B.class,
Parameter[].class
);

请注意,您有一个语法错误:<T extends of B>应该是 <T extends B> .

另请注意,您展示的方法根本不需要是通用的。这同样有效:

private void call(B object, Parameter... parameters) { ... }

关于具有通用类类型的 Java 反射 getDeclaredMethod(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18414996/

46 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com