Java:xxx is not an enclosing class


1. 错误原因

该错误一般出现在对内部类进行实例化时,例如

1 public class A{
2      public class B{ }
3 }

此时B是A的内部类,如果我们要使用如下语句实例化一个B类的对象:

A.B b = new A.B()

则会报错:B is not an enclosing class

 

2. 解决办法

方法一:若要创建内部类的实例,首先要创建外部类的实例;

A a = new A();
A.B b = a.new B();

方法二:将内部类的方法都设置为static方法


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM