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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

最近在看Java基础视频,在编代码时,出现如下错误, No enclosing instance of type E is accessible. Must qualify the allocation with an enclosing instance of type E(e.g.  x.new A() where x is an instance of E)
根据提示,没有可访问的内部类E的实例,必须分配一个合适的内部类E的实例(如x.new A(),x必须是E的实例。)可是我明明实例化了这个类,为什么还不行呢。
于是百度谷歌了一下相关资料。原来我写的内部类是动态的,这一点很重要,因为在main函数中,如果是不能直接调用动态内部类,必须先将这个内部类实例化,而这个内部类的实例化途径,是必须先实例化其包裹类,如果想不通过这种方法调用,最直接的办法就是将内部类的修饰符由public class改为public static class。
在这里记下这个问题,同时方便遇到同样问题的朋友查阅。

不知道这样理解对不对?大家说说看看!


1 个回复

倒序浏览
最好能附上报错代码~~~
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马