新闻详情

新闻详情

首页 / 资讯中心 / 详情

继承与方法的重写

发布时间:2026/10/2 18:12:27来源:尧图网络
继承与方法的重写
一、继承的概念1. 什么是继承继承是面向对象三大特性之一使用extends关键字让子类派生类拥有父类超类 / 基类的非私有属性和方法。作用提高代码复用性减少重复代码实现代码的扩展。父类存放多个子类共有的公共成员子类除了拥有父类内容还可以写自己独有的属性与方法2. 语法格式//父类 class 父类名{ //公共的属性、方法 } //子类 extends 父类 class 子类名 extends 父类名{ //子类自己独有的属性、方法 }3. 代码示例//父类人存放公共属性行为 class Person{ String name; int age; public void sleep(){ System.out.println(睡觉); } } //子类学生继承Person class Student extends Person{ //子类自己独有的成员 int studentId; public void study(){ System.out.println(学生学习); } } public class ExtendsDemo { public static void main(String[] args) { //创建子类对象 Student s new Student(); //继承得到父类的属性 s.name 张三; s.age 18; //父类的sleep方法直接拿来用 s.sleep(); //子类自己的方法 s.study(); } }4.Java 继承的核心规则【重点】Java 是单继承一个子类只能直接继承一个父类不能extends A,B多继承。父类private私有成员不能直接被子类访问私有只能本类内部使用。可以多层继承A 继承 BB 继承 C形成继承链。所有类直接 / 间接继承java.lang.Object类Object 是所有类的祖宗。易错阐释 private 修饰的属性虽然会被继承到子类对象内存中但是语法上子类不能直接访问要访问需要提供 public 的 get/set 方法。5. 子类对象创建过程new 子类对象的时候会优先执行父类的构造方法再执行子类构造方法。 子类构造方法第一行默认隐藏super()调用父类无参构造。二、方法的重写Override1. 重写概念子类中写一个和父类方法签名完全一样的方法。 当子类觉得父类提供的方法逻辑不适合自己就重写覆盖父类原有逻辑。注意区分 重载 (Overload)同一个类内部方法名相同参数列表不同 重写 (Override)父子类之间方法名、参数列表、返回值完全一致2. 重写语法要求方法名、形参列表必须和父类被重写方法一模一样。返回值类型子类返回值可以等于父类或者是父类返回值的子类协变返回。访问权限子类重写方法权限不能比父类更严格父类 public子类不能写 protected/private。使用注解Override写在方法上方编译期校验是否是正确重写推荐写上。private、static、final 的方法不能被重写。3. 代码示例class Animal{ public void eat(){ System.out.println(动物吃东西); } } //子类Dog继承Animal class Dog extends Animal{ //方法重写Override校验重写是否合法 Override public void eat() { //重写父类eat改成狗自己的逻辑 System.out.println(狗啃骨头); } } public class OverrideDemo { public static void main(String[] args) { Dog dog new Dog(); //调用的是子类重写后的方法 dog.eat(); } }运行输出狗啃骨头重点阐释 创建子类对象调用方法优先执行子类重写后的版本如果子类没有重写才执行父类的方法。4.super 调用父类被重写的方法如果重写后还想在子类内部调用父类原本的方法使用super.方法名()。class Dog extends Animal{ Override public void eat() { //调用父类原来的eat方法 super.eat(); System.out.println(狗啃骨头); } }5. 重写 vs 重载对比表重载 Overload重写 Override位置同一个类当中子类和父类之间方法名必须相同必须相同参数列表必须不同必须完全相同返回值无要求必须相同 / 协变子类权限修饰符无要求子类不能比父类权限更严格注解不需要推荐写Override高频易错小结重写只针对普通成员方法属性不存在重写属性只是隐藏。static 静态方法看上去可以 改写但不是重写只是同名遮蔽。Override 是编译检查写错重写格式直接编译报错开发一定要习惯加上。
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

别再只谈大模型了!企业AI真功夫在这里:LLM + RAG+AI Agent+A2A+MCP组合拳解析|TaoToken统一Key通道实战 2026/10/2 19:04:38

别再只谈大模型了!企业AI真功夫在这里:LLM + RAG+AI Agent+A2A+MCP组合拳解析|TaoToken统一Key通道实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
超级电容驱动虚拟同步发电机并网系统:惯量支撑与波形优化 2026/10/2 19:04:31

超级电容驱动虚拟同步发电机并网系统:惯量支撑与波形优化

做分布式并网研究的人,大概率都遇到过这个问题:一台光伏逆变器,明明有功功率控制得很好,但电网频率稍微抖一下,它就像个“局外人”——既不提供惯性支撑,也不参与频率阻尼。原因很简单,传统逆变…

阅读更多 →
CFX监测点与监测曲线设置指南:CFD收敛判断的实用方法 2026/10/2 19:04:19

CFX监测点与监测曲线设置指南:CFD收敛判断的实用方法

做CFD的人大概都有过这种经历:网格画好了、边界条件也给了,计算一跑起来,眼睛就只能盯住那个残差曲线,心里七上八下的,完全不知道结果到底靠不靠谱。其实残差曲线只能告诉你“方程有没有解下去”,没办法直接…

阅读更多 →
风光氢多主体合作博弈与分布式求解:基于纳什谈判的联合运营优化 2026/10/2 19:04:19

风光氢多主体合作博弈与分布式求解:基于纳什谈判的联合运营优化

风光氢联合运营这些年提得很多,但真正动手做项目时,最头疼的往往不是风、光、氢各自的建模精度,而是这几个产权主体之间“怎么分钱、怎么协调”的问题。风电场、光伏电站、制氢厂如果分属不同投资方,各自有各自的成本曲线和收益诉…

阅读更多 →
大模型API网关配额防透支:Redis+Lua原子预扣实战 2026/10/2 19:04:19

大模型API网关配额防透支:Redis+Lua原子预扣实战

1. 从一次线上事故说起:为什么配额预扣必须做成原子操作去年冬天的一个凌晨,我被值班电话叫醒——某个大模型 API 网关的账单在三个小时内暴涨了四十倍。排查下来原因并不复杂:一个租户的客户端因为网络抖动疯狂重试,而我们的配额…

阅读更多 →
browser-use实战:让AI Agent真正操控浏览器完成自动化任务 2026/10/2 19:04:19

browser-use实战:让AI Agent真正操控浏览器完成自动化任务

这段时间AI Agent的话题特别热,但很多朋友问我:Agent到底能帮我们干什么?说实话,早期接触Agent的时候,我也觉得它有点“纸上谈兵”——能写代码、能回答问题,但真要让它去完成一个实际操作,比如…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉