我有以下代码:
public class InnerClassStuff {
public class A{
public class AA{}
}
}
我的问题是我如何才能实现AA对象?
我已经尝试了以下但是它不会编译:
public static void main(String[] args){
InnerClassStuff object = new InnerClassStuff();
A a = object.new A();
AA aa = object.a.new AA(); //error
}
答案 0 :(得分:1)
要实例化内部类,必须首先实例化外部类。所以,你不能声明A a= ..
,你需要把它包装在外面的类中,如下所示:
InnerClassStuff object = new InnerClassStuff();
InnerClassStuff.A.AA a = object.new A().new AA();
或者,
InnerClassStuff object = new InnerClassStuff();
InnerClassStuff.A a = object.new A();
InnerClassStuff.A.AA aa = a.new AA();
答案 1 :(得分:0)
要访问类,必须使用外部类名,只有通过这样做才能拥有内部类的引用变量。例如:
InnerClassStuff object = new InnerClassStuff();
InnerClassStuff.A a = object.new A();
InnerClassStuff.A.AA aa = a.new AA();