[Java]子类到底能继承父类中的哪些东西?继承中成员变量/方法访问特点---就近原则

首要结论

子类到底能继承父类中的哪些东西?

构造方法 成员变量 成员方法
非私有,不能 非私有,能 非私有(能被添加进虚方法表中),能
private,不能 private,能继承,但不能用 private,不能

成员变量继承情况

父类的 name,age 没用 private 修饰:

父类的 name,ageprivate 修饰:


成员方法

  • 非 private
  • 非 static
  • 非 final

继承中成员变量访问特点---就近原则

主要看 "喝茶" 案例;

  • 调用 hobby 采取就近原则,从局部中开始向上找
  • 调用 this.hobby 采取就近原则,从子类中开始找
  • 调用 super.hobby 采取就近原则,从父类中开始找

继承中成员方法访问特点---就近原则

  • 直接调用满足就近原则
  • super 调用,直接访问父类


方法的重写

当父类的方法不能满足子类现在的需求时,需要进行方法重写。

书写格式:在继承体系中,子类出现了和父类中一模一样的方法声明,我们就称子类这个方法是重写的方法。

@Override 重写注释:

  1. @Override 是放在重写后的方法上,检验子类重写时语法是否正确
  2. 加上注释后如果有红色波浪线,表示语法错误
  3. 建议重写方法都加上 @Override ,代码安全、优雅


本质:

方法重写即为,子类覆盖了 从父类中继承的、虚方法表里的 方法。

重写注意事项


链接

(第二个子类重写父类方法时,访问权限子类必须大于等于父类,这里的访问权限指的是 子类中成员方法的访问权限。)反正记住 子类方法名称、形参列表和父类完全一致即可。

相关推荐
鹿角片ljp6 小时前
LeetCode 64:最小路径和复盘|二维 DP 与 ACM 模式完整写法
java·数据结构·算法
aramae6 小时前
模拟实现strcmp()(C语言)
c语言·开发语言·后端
泡海椒7 小时前
PDF 表格样式优化:jquick-pdf 边框、圆角、背景色
java·开发语言·pdf
Beyond_System|系统之外8 小时前
【学编程】Python基础编程题100道(21-60)
开发语言·python·算法
景熙55238 小时前
15.Java 8 Stream 流入门到实战
java·开发语言·数据结构
wno7049 小时前
Spring Security权限控制
java·python·spring
杨运交9 小时前
[071][验证码模块]基于Spring拦截器的验证码认证设计思想
java·后端·spring
Geek-Chow9 小时前
CountDownLatch in Java
java
SL_staff10 小时前
从RBAC到场景化授权:《无忧·企业文档》三级权限模型的技术实践解析
java·开源·产品