Java getMethod抛出方法未找到异常?

时间:2011-09-30 18:32:14

标签: java android reflection

我正在使用getMethod(String name)函数加载方法,但它总是抛出MethodNotFoundException。如果我运行class.getMethods()我正在寻找的方法就是使用我用来传递给getMethod()的确切名称的结果。我试图加载的方法是一个静态方法,所以我不知道getMethod()是否不适用于静态方法。有什么帮助吗?

2 个答案:

答案 0 :(得分:6)

如果您要查找的方法采用任何参数,则还需要将其类型传递给getMethod()。 Java方法的签名(唯一定义和标识方法的东西)由方法名称组成,其参数类型。

http://download.oracle.com/javase/tutorial/java/javaOO/methods.html

答案 1 :(得分:0)

这个名字还不够。您必须准确指定您认为该方法采用的参数类型,否则查询可能不明确(因为Java支持重载)。