我正在使用getMethod(String name)
函数加载方法,但它总是抛出MethodNotFoundException
。如果我运行class.getMethods()
我正在寻找的方法就是使用我用来传递给getMethod()
的确切名称的结果。我试图加载的方法是一个静态方法,所以我不知道getMethod()
是否不适用于静态方法。有什么帮助吗?
答案 0 :(得分:6)
如果您要查找的方法采用任何参数,则还需要将其类型传递给getMethod()
。 Java方法的签名(唯一定义和标识方法的东西)由方法名称和组成,其参数类型。
http://download.oracle.com/javase/tutorial/java/javaOO/methods.html
答案 1 :(得分:0)
这个名字还不够。您必须准确指定您认为该方法采用的参数类型,否则查询可能不明确(因为Java支持重载)。