A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 周刚 中级黑马   /  2012-7-10 12:31  /  1494 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

一个类继承了另一个类的内部类,因为超类是内部类,而内部类的构造方法不能自动
被调用,这样就需要在子类的构造方法中明确的调用超类的构造方法。
接上例:
class C extends A.B {
C() {
new A().super(); // 这一句就实现了对内部类构造方法的调用。
}
}
这个怎么理解呢?

1 个回复

正序浏览
本帖最后由 陆强强 于 2012-7-10 13:34 编辑

其他类要访问内部类必须先建立内部类所属外部类对象,如果是静态可以类名调用
new A()//创建内部类的所属外部类对象
super(); // 调用父类构造函数,因为是继承不用new一个内部类对象
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马