为了账号安全,请及时绑定邮箱和手机立即绑定

问一个关于Java方法重写的问题

问一个关于Java方法重写的问题

suxiao 2015-11-03 21:20:09
就是Java入门第二季里面,父类创建了一个普通方法,子类重写此方法,在测试类中只创建子类对象,并调用此方法,输出的就只有子类重写的普通方法。  但是如果父类创建了一个构造方法,子类重写此构造方法,在测试类中同样只创建子类对象,并调用此方法,输出的既有子类重写的构造方法,又有父类本身的构造方法。这是为什么呢?
查看完整描述

2 回答

?
天启之魂

TA贡献174条经验 获得超85个赞

构造函数是不能继承的 所以也就不存在覆盖

子类创建对象时,会运行子类的构造方法,但是在子类构造方法的第一行会默认调用父类的无参构造方法(你写不写,系统都会给你加上),除非你指定调用父类的其他构造方法,所以你在创建子类对象时,第一个运行的是子类构造方法,然后在第一行调用父类构造方法,等父类构造方法执行完后,再继续执行子类的构造方法

查看完整回答
反对 回复 2015-11-04
?
AAnonymous

TA贡献62条经验 获得超31个赞

构造函数怎么可以覆盖呢?

查看完整回答
反对 回复 2015-11-03
  • 2 回答
  • 0 关注
  • 1252 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信