黑马程序员技术交流社区

标题: 内部类作为基类的实现问题 [打印本页]

作者: 蔡园园    时间: 2011-8-11 02:44
标题: 内部类作为基类的实现问题
public class TestDemo01 {
public static void main(String[] args) {
  // TODO Auto-generated method stub
            C c = new C(new A());
            c.sayHello();
}

}

class A {

class B {
  public void sayHello() {
             System.out.println("hello");
  }
}
}

class C extends A.B {

public C(A a) {
  a.super();
   }
}

其中a.super()怎么理解,以前认为super作为父类对象的一个引用,但是放在这不好理解,希望各位给解答下。。。。
作者: 匿名    时间: 2011-8-11 08:10
因为内部类的构造器必须连接到指向其外围类对象的引用。
C只继承了内部类,默认的构造器不能只是传递一个指向外围类对象的引用。必须在构造器使用a.super()
这样就提供了必要的引用,编译器就能通过。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2