php中文网

反射 NoSuchMethodException:为什么调用 getName 方法时会抛出异常?

php中文网

反射 nosuchmethodexception

在 java 中使用反射时,有时会遇到 nosuchmethodexception 异常。此异常表示正在寻找的方法不存在于给定的类或接口中。

在这种情况下,问题出在你试图获取 getname 方法时传递了一个参数("string.class"),但实际上这个方法没有参数。正确的代码如下:

Method method = c.getMethod("getName");

以下是问题的详细解答:

  1. 使用 class.forname 加载 "com.demo.pojo.user" 类。
  2. 创建该类的实例。
  3. 获取类的所有方法。
  4. 尝试获取 getname 方法,错误地传递了一个参数。这会引发 nosuchmethodexception 异常。

修改后的代码将返回 "user" 字符串,因为 getname 方法没有参数。

以上就是反射 NoSuchMethodException:为什么调用 getName 方法时会抛出异常?的详细内容,更多请关注php中文网其它相关文章!