Java继承内部类的问题
Java内部类的继承问题
public class Outer {
public void say() {
System.out.println("outer");
}
class Inner {
public void say() {
System.out.println("inner");
}
}
}
public class Test extends Outer.Inner {
/**
* 继承内部类Inner会在Test类的无参构造中默认调用super();方法,即
* public Test(){
* super();
* }
* 此时调用的是Inner的无参构造, 而由于Inner是Outer的内部类,因此需要先创建Outer之后才能调用到Inner,所以需要调用Outer的无参构造才能创建Outer的对象。也就产生了以下代码
*/
public Test(Outer outer){
outer.super();
}
public static void main(String[] args) {
}
}
还没有评论,来说两句吧...