问答详情
源自:5-1 Java 方法反射的基本操作

求问为什么编译错误了

582889700001352c05000226.jpg

582889700001ad6f05000278.jpg

第一张是老师的,第二张图是我自己做的。为什么我的就有错了。

错误显示No enclosing instance of type MethodDemo1 is accessible. Must qualify the allocation with an enclosing instance of type MethodDemo1 (e.g. x.new A() where x is an instance of MethodDemo1).       办法是在class A前面加一个static就可以解决报错

但为什么老师就可以直接 A a1 = new A();不报错呢


提问者:慕粉1474367326 2016-11-13 23:43

个回答

  • 超级省电侠4405474
    2016-11-14 02:44:04
    已采纳

    main方法是静态方法,静态方法不能直接调用动态方法,class A需要是静态的.

    老师的是两个不同的类,你这个A是MethodDemo1的内部类.