请问,这段java程序哪里有问题?

来源:百度知道 编辑:UC知道 时间:2024/06/08 11:06:12
class Outer{
class Inner{
public Inner(){
}
}
}
public class Test {

public static void main(String[]args){
Outer.Inner in = new Outer.Inner();//在这儿报错:需要包含Outer.Inner的封闭实例
}
}
什么叫要包含实例??怎么改就对了??

代码如下:
class Outer {
class Inner {
public Inner() {
}
}
}

public class Test {

public static void main(String[] args) {
Outer.Inner in = new Outer().new Inner();//需要先new一个外部类对象,再new一个内部类对象^o^
}
}

这是一个内部类的问题,而且这是一个成员内部类,创建这个内部类的时候,必须要外部类的实例对象去创建,
所以你main()函数里面写代码为
Outer out=new Outer();
Outer.Inner in=out.new Inner();