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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 赵晓波 黑马帝   /  2012-3-5 14:20  /  2545 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

继承中的构造方法,只要基类中没有无参的构造方法,无论子类中是否有super调用都会出错.但是如果Super调用的是有参的,它显示的结果是带参的,显然调用的是基类有参构造方法,但此时基类中若没有无参构造方法,子类实例化却会出错,不知道为什么?

1 个回复

倒序浏览
创建一个子类的对象实例的时候,必先调用父类的无参数的构造函数(默认构造函数),假如父类有带参数的构造函数,那么系统将不会给它创建无参数的构造 函数,这时,子类在实例化的时候,因为找不到父类的默认构造函数,编译器将会报错,但如果在子类的构造函数中指定用父类的带参数的构造函数的时候,或者在 父类中加一个无参数的构造函数,就不会报错。   
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马