public class A {
public class B {
}
};
需要实例B类时,按照正逻辑是,A.B ab = new A.B();
那么编译器就会出现一个错误–“is not an enclosing class”
再翻看相关的Java代码,发现原来写法出错了!正确的做法是
A a = new A();
A.B ab = a.new B();
没有静态(static)的类中类不能使用外部类进行.操作,必须用实例来进行实例化类中类.
转自:https://blog.youkuaiyun.com/cocochenqiuyue/article/details/70228562
本文详细解释了在Java中如何正确实例化一个非静态内部类。通过具体的代码示例展示了外部类与内部类的关系,强调了必须先创建外部类实例才能实例化内部类的重要性。
707

被折叠的 条评论
为什么被折叠?



