我有看起来像这样的通用类:
interface X<Input, Output>
{
Output process(Input input);
}
class Y implements X<Integer, Float>
{
Float process(Integer input);
}
我使用 getDeclaredMethods 来查找 Y 上的进程,只是用它的名字(不是参数,故意)。当我查看返回的 Method[] 时,进程显示了两次,输入 = 对象、输出 = 对象,然后是实际的实例化类型:整数和浮点数。
请注意:我可以在 Method[] 中看到 1 个带有 Object、Object 的函数和 1 个带有我用来实例化的实际类型的函数,例如 Integer、Float。因此,我感兴趣的第二个函数可以从 Method[] 访问。
仅获取具有实际类型的方法的最佳方法是什么?