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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 于清云 中级黑马   /  2012-4-23 09:51  /  2561 人查看  /  8 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

子类继承父类时候,可以继承父类的属性和方法,那么父类的构造方法是不是也继承过来了呢?

评分

参与人数 1技术分 +1 收起 理由
贠(yun)靖 + 1

查看全部评分

8 个回复

倒序浏览
继承过来了
子类在创建对象的时候会先调用父类不带参数的构造方法!
回复 使用道具 举报
子类继承父类的所有属性和方法,不继承构造方法。子类的构造方法必须调用父类的构造方法。
希望你能明白。

评分

参与人数 1技术分 +1 收起 理由
贠(yun)靖 + 1

查看全部评分

回复 使用道具 举报
子类的构造方法里默认有个Super();
可以覆盖
这么说就ok了
回复 使用道具 举报
张亮 发表于 2012-4-23 10:04
子类继承父类的所有属性和方法,不继承构造方法。子类的构造方法必须调用父类的构造方法。
希望你能明白。 ...

我明白了 大虾
回复 使用道具 举报
没有继承过来,
因为子类每一个构造函数内的第一行都有一句隐式super();
子类的所有的构造函数,默认都会访问父类中空参数的构造函数。
当父类中没有空参数的构造函数时,子类必须手动通过super语句形式来指定要访问父类中的构造函数。

评分

参与人数 1技术分 +1 收起 理由
贠(yun)靖 + 1

查看全部评分

回复 使用道具 举报
构造方法不能被继承只能在构造方法中被调用 父类中静态成员是在子类类装载时同时装载父类继承父类的静态成员  之所以能继承父类非静态成员 是因为在子类中的构造函数中通过super(参数列表);调用父类构造函数从而继承非静态成员  当子类构造函数里没有书写该语句是系统会帮你在第一行默认增加super();语句  当然你也可以复写该语句 在多态向上造型情况下 如果调用的是成员方法 那么执行的是子类的成员方法 如果是成员变量 那么是父类的成员变量
回复 使用道具 举报
final修饰的类不能被继承的;我认为子类能继承父类的构造函数,要不然怎么会在有默认的空参数构造函数呢;
子类也可以调用父类的构造函数;这也间接的说明子类继承了父类的构造函数才能调用的;
并且构造函数只是对对象进行初始化的动作。对子类进行初始化的时候必须先对父类进行初始化;也表明了子类继承了父类构造函数才有资格对其进行初始化的。
回复 使用道具 举报
你也信于啊,我也姓于,咋们同姓呢!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马