JAVA 如果子类与父类定义同名的变量和方法

子类和父类如果定义了同名的成员变量

此时,子类和父类中的同名变量会同时存在!
使用super可以正常的调用同名的父类成员变量。
如果调用父类的方法,那么会默认使用父类的变量。
如果调用子类的方法(或者说子类的方法override了父类中的同名方法),那么会默认使用子类的变量。

子类和父类如果定义了同名的方法

如果参数不同,那么子类中的方法可以当作是一个全新的方法。
如果参数相同,那么这种情况称之为重写。
重写有两个原则:
(1):子类方法的返回值范围一定要<=父类方法的返回值范围,比如父类的方法返回int,子类重写的时候不能返回flaot。
(2):子类方法的权限必须>=父类方法的权限。
排序是 public>protect>default>private

posted @   姬桑day1  阅读(1513)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 终于写完轮子一部分:tcp代理 了,记录一下
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
点击右上角即可分享
微信分享提示