java父类与子类的关系

java父类与子类的关系,第1张

java父类与子类的关系

举例

父类有4个方法,子类中重构了3个,并且有一个新方法

 

子类没有方法4,但是因为子类的构造函数会执行super(),相当于构造了一个父对象,就会默认拥有父类的所有方法(包括私有方法,只不过不能访问:可以通过父类的公有方法访问私有方法)

父类 x=new 子类();

这一语句先执行父类的构造方法,再执行子类的构造方法。从而做到了先拥有父类的所有方法,然后如果子类有相同的方法就会把父类方法覆盖。也就实现了多态。但x本质还是一个父类对象,所以对于子类的新方法,无法访问。

 

这些就是x可以使用的所有方法,但是在内存中,子类的新方法也是存在的,只不过父类无法使用。

通过将父类对象转换为子类对象就可以实现访问新方法。

static 方法是无法继承的,它不属于对象,属于类本身。这也就是为什么父类型和子类型有相同的static方法,但是父对象调用的static方法是父类的,子对象调用的static方法是子类的

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4022610.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-10-22
下一篇 2022-10-22

发表评论

登录后才能评论

评论列表(0条)

保存