尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
Java类与继承
Java 面向对象类的继承extends与重写前言这是学习Java类与继承的笔记用动物作为父类狗猫作为子类进行一个示范。本篇记录继承相关的基础知识。环境JDK 17IntelliJ IDEA纯 Java 项目未使用 Maven一、什么是继承继承也就是让子类自动拥有父类所有的属性和方法关键字extendspublicclassDogextendsAnimal{...}即Dog为Animal的子类这样Dog就不用重复写Animal已经有的属性和方法了。有利于进行代码复用公共的部分放父类各子类只写自己特有的部分。二、父类与子类父类Animal代表所有动物的共性名字、年龄会叫、会动。publicclassAnimal{privateStringkind;//设置私有属性种类私有属性只能通过类中设定的方法访问privateintage;//年龄publicvoidsetKind(Stringkind){this.kindkind;//设置函数让外界可以访问私有属性}publicStringgetKind(){returnkind;//设置函数让外界可以获取私有属性}publicvoidsetAge(intage){this.ageage;}publicintgetAge(){returnage;}publicvoidshout(){System.out.println(kind发出叫声);//通用函数}publicvoidmove(){System.out.println(kind做出动作);}}注意kind、age都是private私有属性。这是封装属性私有外面要通过setKind/getKind这类方法合称getter/setter来访问。三、子类与私有属性不能直接访问让Dog继承AnimalpublicclassDogextendsAnimal{publicvoidspeakKind(){System.out.println(getKind());}}这里Dog里不能写kind因为kind是父类的私有属性无法直接访问只能通过继承来的getKind()来访问。这就是封装的作用子类虽然能继承但不能直接访问只能通过公有的 getter/setter来读写。四、方法重写override与 super父类的shout()只打印通用的发出叫声。对于子类Dog应该有狗的叫法因此需要重写方法publicclassDogextendsAnimal{publicvoidshout(){super.shout();//先执行父类的通用方法System.out.println(汪汪);//加上子类自己的}}重写覆盖方法名、参数、返回值必须完全一样只有方法函数体换成子类的。super.shout();表示先调用一遍父类自己的那版方法。注意如果写成this.shout();就变成了调用自己就会形成死循环。五、子类新增自己的方法除了重写子类可以加父类没有的方法比如Dog的speakKind()publicclassDogextendsAnimal{publicvoidspeakKind(){System.out.println(getKind());}}用猫再写一个子类Cat作为对比只需重写shout()/move()publicclassCatextendsAnimal{publicvoidshout(){super.shout();System.out.println(喵喵);}publicvoidmove(){super.move();System.out.println(走动);}}六、测试publicclassTest{publicstaticvoidmain(String[]args){DogdognewDog();//新建Dog对象dog.setKind(小狗);//通过方法设置私有属性dog.setAge(3);dog.shout();//dog类重写过的方法小狗发出叫声dog.move();System.out.println(dog.getKind()今年dog.getAge()岁);//通过getter来访问内容}}运行后发现同样是shout()狗汪汪、猫喵喵父类定好框架子类则可以按照各自的需求具体实现。七、错误记录super写成了this一开始重写时写this.shout();结果方法自己调自己造成了无限递归。调父类版本必须用super。八、总结本篇掌握了继承、方法重写的基本概念。继承让共性代码放在父类复用子类只需要重写差异部分这就是面向对象复用 扩展的思想。
RELATED

相关推荐

Spring AI Alibaba 快速上手:使用 DashScope 实现 Tool Calling(函数调用)实战

Spring AI Alibaba 快速上手:使用 DashScope 实现 Tool Calling(函数调用)实战

在 AI 应用开发中,让大模型调用外部工具、访问实时数据或执行业务逻辑是常见需求。Spring AI Alibaba 结合阿里云 DashScope(通义千问)提供了简洁的 Tool Calling(函数调用)能力,模型可以自动识别用户意图并…

📅 2026/10/6 18:46:09
现代 JavaScript 教程:遍历嵌套 ul/li 树,统计每个节点的后代数量

现代 JavaScript 教程:遍历嵌套 ul/li 树,统计每个节点的后代数量

文档/教程前端 【免费下载链接】en.javascript.info Modern JavaScript Tutorial 项目地址: https://gitcode.com/gh_mirrors/en/en.javascript.info 点击查看 免费下载 导读 本文围绕《Modern JavaScript Tutorial》仓库中"Count descendants(统…

📅 2026/10/6 18:46:09
DirectX 12 Raytracing(DXR)实战示例全解析:DirectX-Graphics-Samples 中的教程与高级场景指南

DirectX 12 Raytracing(DXR)实战示例全解析:DirectX-Graphics-Samples 中的教程与高级场景指南

示例工程 【免费下载链接】DirectX-Graphics-Samples This repo contains the DirectX Graphics samples that demonstrate how to build graphics intensive applications on Windows. 项目地址: https://gitcode.com/gh_mirrors/di/DirectX-Graphics-Samples 点击…

📅 2026/10/6 18:46:08
MORE NEWS

更多资讯

📰

解读 INT8 量化经典论文《Integer Quantization for Deep Learning Inference》:什么叫量化、为什么选量化、还有哪些替代方案——原理、校准与产业应用

解读 INT8 量化经典论文《Integer Quantization for Deep Learning Inference》:什么叫量化、为什么选量化这条路线、还有哪些替代方案——原理、校准与产业应用本文作为笔者个人备忘的文章,不喜勿喷。以及 AI 生成。全文基于 NVIDIA 论文《Integer Quan…

📰

别再为护眼灯交智商税了!书客、明基、柏曼、霍尼韦尔等10款热门型号深度拆解:什么样的台灯最护眼?一篇讲透选购逻辑和隐藏坑

​最近后台问护眼灯的家长特别多,问题高度一致:想给孩子选一盏真正护眼的灯,怎么选才不踩坑?但现实很残酷。要么图便宜买低价网红款,孩子用不了多久就喊眼睛酸,回头一看参数全是虚标;要么冲着大…

📰

2026年GEO生成式AI搜索优化服务商实测榜:AI搜索引擎排名与获客GEO横评

内容摘要:2026年国内AI搜索用户规模达到8.2亿,企业获客方式正从传统搜索引擎优化转向GEO优化。本文基于公开资料,对7家GEO生成式AI搜索服务商做场景分组与能力观察,梳理AI获客与AI推荐的实现路径,帮助企业提升在AI搜索…

📰

能力边界与交付边界同时移动,技术栈该怎么看|2026年10月05日

今日技术圈最值得拆的两件事,都不在"模型有多大",而在"能力如何被组织、成本如何被压低"。OpenAI 称其尚未公开发布的最新模型仅用 88 小时解出"纳维-斯托克斯存在性与光滑性问题",动用多达 1 万个 AI 智能体协…

📰

一招解决Python编码乱码难题

一碰到这种情况就感到心里发慌? 那么这篇内容就可以帮助你把它处理得妥妥当当。你肯定遇到过这个报错>>> with open(data.txt, r) as f:... content f.read()...UnicodeDecodeError: gbk codec cant decode byte 0x80 in position 2: illegal multibyte sequence一瞬…

📰

WeVisDoc: From Coverage to Capability for RobustEnd-to-End Document Parsing——从覆盖到能力,面向鲁棒端到端文档解析

这篇论文提出了 WeVisDoc,一个面向鲁棒端到端文档解析的两阶段数据-centric 框架。其核心思想是:文档解析器的性能提升不应只靠扩大数据覆盖,还需要在训练后诊断模型残余弱点,并据此有针对性地补充数据和重新分配训练预算。 一、…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬