您的位置:首页 > 其它

为什么在实例化子类的对象的时候会调用先调用父类的构造函数

2016-08-12 18:26 239 查看
1、为什么在实例化子类的对象的时候会调用先调用父类的构造函数?

答:因为子类继承父类之后,获取到了父类的内容(属性/字段),而这些内容在使用之前必须先初始化,所以必须先调用父类的构造函数进行内容的初始化.

2、在什么地方调用基类的构造函数?

答:在子类的构造函数中的第一行会隐士的调用 super();子句,即调用了父类的构造函数

如果父类里面没有定义参数为空的构造函数,那么必须在子类的构造函数的第一行显示的调用super(参数);语句调用父类当中其它的构造函数.

如果子类当中的构造函数的第一行写了this();那么就隐士的那个super();语句就会消失..因为super()和this()都只能定义在构造函数的第一行.

特别提醒:super();必须出现在构造函数的第一行.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: