java父类的构造方法为什么不能被子类继承

[复制链接]
查看11 | 回复4 | 2018-2-28 21:20:49 | 显示全部楼层 |阅读模式
子类=父类﹢新增的变量﹢新增的方法。对象语言的构造器作用在于对类创建实例对象时完成对象的初始化工作(为变量申请内存空间等)因此,子类的构造器除了承担着初始化子类的新增变量和方法,还要初始化父类自身新增加的变量和方法。一般来说,如果在子类的构造器中没有使用super()调用父类相应的构造器,子类的构造器会自动调用父类默认的,也就是不带参数的构造器来初始化父类的东西。而Java类的默认构造器,当你没有为你写的类建造构造器的时候,Java会自动帮你创建这个默认构造器,但是当你自己编写了构造器后,你自己编写构造器将会覆盖掉默认的构造器,就是说默认的构造器不存在。那么这个时候,你在继承的子类里面没有显示添加super()函数调用你在父类里编写的父类构造器,子...
回复

使用道具 举报

千问 | 2018-2-28 21:20:49 | 显示全部楼层
父类的构造器不能不继承,这个是规则!下面代码说嘛了这个问题:class Fruit{public Fruit(String name){System.out.println("执行Fruit类的构造器!!!");}}//定义Apple类并继承fruit类class Apple extends Fruit{//没有编写构造器}public class Test...
回复

使用道具 举报

千问 | 2018-2-28 21:20:49 | 显示全部楼层
Person(){}把它去掉或者改成Public Person(){}你没有给他修饰符,默认是friendly ,子类是不能继承的...
回复

使用道具 举报

千问 | 2018-2-28 21:20:49 | 显示全部楼层
构造方法名与类名相同,只在对象被创建时自动调用...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行