这是在看Thinking in java(第三版)时看到的
在继承一个内部类时要格外的注意
class WithInner {
class Inner {}
}
public class InheritInner extends WithInner.Inner {
//! InheritInner() {} // Won't compile
InheritInner(WithInner wi) {
wi.super();//我想这里的wi.super()并不是调用wi的super的意思,而是将wi传送给自己的super()。就好像wi.new一样
}
public static void main(String[] args) {
WithInner wi = new WithInner();
InheritInner ii = new InheritInner(wi);
}
} ///:~
注意这里对内部类的继承时需要做的特殊处理
在继承一个内部类时要格外的注意
class WithInner {
class Inner {}
}
public class InheritInner extends WithInner.Inner {
//! InheritInner() {} // Won't compile
InheritInner(WithInner wi) {
wi.super();//我想这里的wi.super()并不是调用wi的super的意思,而是将wi传送给自己的super()。就好像wi.new一样
}
public static void main(String[] args) {
WithInner wi = new WithInner();
InheritInner ii = new InheritInner(wi);
}
} ///:~
注意这里对内部类的继承时需要做的特殊处理