Java中出现No enclosing instance of type Demo01 is accessible解决方法参考

Java中出现No enclosing instance of type Demo01 is accessible解决方法参考,第1张

Java中出现No enclosing instance of type Demo01 is accessible解决方法参考

出现类似以下错误

No enclosing instance of type Demo01 is accessible. Must qualify the allocation with an enclosing instance of type Demo01 (e.g. x.new A() where x is an instance of Demo01).(没有可访问的内部类Demo01的实例,必须分配一个合适的内部类Demo01的实例(如x..new A(),x必须是Demo01的实例)

       

 

  • 内部类Dog是动态的,也就是开头是以public class 开头的。但是主函数是public static void main ,是静态的。

  • 在Java中,类中的静态方法不能直接调用动态方法,类中的静态方法是不能去访问非静态成员的,因为非静态成员不存在的时候静态成员已经存在了,访问一个内存中不存在的内容当然会出错了。

  • 解决办法:

    (1) 不使用内部类

  •       

(2)给内部类都加上static 都变成与主函数一样的静态。
          

 

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5636756.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存