A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

  1. import java.lang.reflect.*;

  2. class CopyAllFiles{
  3.         public static void main(String[] args) throws  Exception{
  4.                 Constructor constructor1 = A.class.getConstructor();
  5.                 A a =  (A)constructor1.newInstance();
  6.                 A.class.getMethod("show", String.class).invoke(a, "hehe");
  7.                
  8.         }
  9.         class A{
  10.                 public A(){}
  11.                         
  12.                 public void show(String str){
  13.                         System.out.println(str);
  14.                 }
  15.         }
  16. }
复制代码
Exception in thread "main" java.lang.NoSuchMethodException:   是怎么回事呢,搞不懂了 求解惑

2 个回复

倒序浏览
好清冷,出去转一圈回来 发现class A 写成内部类了
回复 使用道具 举报
翻译一下  主线程错误。
没有这样的方法错误。。

我们一般是把 类A 放在另外一个文档里的。 用Class  的forName方法读取。
至于你这个 内部类A  我觉得逻辑上也是可行的呀。。。。
反射一般是 从外部解构对象。
你这样写内部类  除了做练习方便 有什么用? ?还是人家这个方法就不支持内部类?
期待大神的详细解答,我也很好奇为什么这样不行。。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马