public class InnerClass {
class Inner
{
public void method()
{
System.out.println("Innerclass");
}
}
}
class Sample extends InnerClass.Inner
{
public static void main(String [] arg)
{
Sample s = new Sample(new InnerClass());
s.method();
}
//为什么这是强制性的???
Sample(InnerClass i) {
i.super();
}
@Override
public void method() {
System.out.println("derived class");
}
}
当我创建一个派生自内部类(Innerclass.Inner)的类时,默认构造函数不起作用。后来我才知道它需要包含一个带有封闭类引用的构造函数,为什么会这样?