对于内部类中super()的疑惑和实验

来源:互联网 发布:php url参数加密 编辑:程序博客网 时间:2024/06/11 17:11

继承外部类的内部类,当生成一个构造器时候,需要一个指向外部类对象的引用和调用外部类对象的super()方法,


然而super()一直以为是调用父类的构造函数,在本例中使用,居然是可以调用内部类的构造函数。先留个疑问,如果以后想到了再来继续说明。

class WithInner {WithInner() {System.out.println("调用外部类构造方法");}   class Inner {  Inner() {  System.out.println("调用内部类构造方法");  }  }  }public class InheritInner extends WithInner.Inner {  //! InheritInner() {} // Won't compile  InheritInner(WithInner wi) {    wi.super();  }  public static void main(String[] args) {    WithInner wi = new WithInner();    InheritInner ii = new InheritInner(wi);  }} ///:~

阅读全文
0 0
原创粉丝点击