方法重载和方法重写

01、开篇

入冬的夜,总是来得特别的早。我静静地站在阳台,目光所及之处,不过是若隐若现的钢筋混凝土,还有那毫无情调的灯光。

“哥,别站在那发呆了。今天学啥啊,七点半我就要回学校了,留给你的时间不多了,你要抓紧哦。”三妹傲娇的声音一下子把我从游离的状态拉回到了现实。

“今天要学习 Java 中的方法重载与方法重写。”我迅速地走到电脑前面,打开一份 Excel 文档,看了一下《教妹学 Java》的进度,然后对三妹说。

“如果一个类有多个名字相同但参数个数不同的方法,我们通常称这些方法为方法重载。 ”我面带着朴实无华的微笑继续说,“如果方法的功能是一样的,但参数不同,使用相同的名字可以提高程序的可读性。”

“如果子类具有和父类一样的方法(参数相同、返回类型相同、方法名相同,但方法体可能不同),我们称之为方法重写。 方法重写用于提供父类已经声明的方法的特殊实现,是实现多态的基础条件。”

“只不过,方法重载与方法重写在名字上很相似,就像是兄弟俩,导致初学者经常把它们俩搞混。”

“方法重载的英文名叫 Overloading,方法重写的英文名叫 Overriding,因此,不仅中文名很相近,英文名之间也很相近,这就更容易让初学者搞混了。”

“但两者其实是完全不同的!通过下面这张图,你就能看得一清二楚。”

话音刚落,我就在 IDEA 中噼里啪啦地敲了起来。两段代码,分别是方法重写和方法重载。然后,把这两段代码截图到 draw.io(一个很漂亮的在线画图网站&#x

教妹学Java:傻傻分不清,方法重载和方法重写相关推荐

  1. 教妹学Java(十四):switch 语句详解

    大家好,我是沉默王二,一个和黄家驹一样身高,和刘德华一样颜值的程序员.本篇文章通过我和三妹对话的形式来谈一谈"switch 语句". 教妹学 Java,没见过这么有趣的标题吧?&q ...

  2. 教你学java_教妹学Java:Spring 入门篇

    你好呀,我是沉默王二,一个和黄家驹一样身高,刘德华一样颜值的程序员(管你信不信呢).从两位偶像的年纪上,你就可以断定我的码龄至少在 10 年以上,但实话实说,我一直坚信自己只有 18 岁,因为我有一颗 ...

  3. 教妹学 Java:大有可为的集合

    本篇通过一种趣味化的形式来讲述 Java 的集合. 00.故事的起源 "二哥,上一篇<泛型>的反响效果怎么样啊?"三妹对她提议的<教妹学 Java>专栏很是 ...

  4. 教妹学Java:接口,抽象的另一种表现方式

    接口 "哥,我看你朋友圈说<教妹学 Java>专栏收到了第一笔赞赏呀,虽然只有一块钱,但我也替你感到开心."三妹的脸上洋溢着自信的微笑,仿佛这钱是打给她的一样. &qu ...

  5. 教妹学Java(九):一文搞懂Java中的基本数据类型

    大家好,我是沉默王二,一个和黄家驹一样身高,和刘德华一样颜值的程序员.本篇文章通过我和三妹对话的形式来谈一谈"Java 中的数据类型". 教妹学 Java,没见过这么有趣的标题吧? ...

  6. 教妹学Java(二十六):static 关键字解析

    你好呀,我是沉默王二,(目前是)CSDN 周排名前十的博客专家.这是<教妹学 Java>专栏的第二十六篇,今天我们来谈谈 Java 的 static 关键字--什么是静态变量?什么是静态方 ...

  7. 教妹学Java(二十一):一文带你了解面向对象编程的所有概念

    你好呀,我是沉默王二,是<Web 全栈开发进阶之路>的作者,CSDN 的博客之星.<教妹学 Java>是一套非常有趣的付费专栏,除了继续保持幽默风趣的行风风格,我还力求把每一个 ...

  8. 教妹学Java(十九):continue 关键字详解

    你好呀,我是沉默王二,是<Web 全栈开发进阶之路>的作者,CSDN 2019 年度的博客之星.<教妹学 Java>是一套非常有趣的付费专栏,除了继续保持幽默风趣的行风风格,我 ...

  9. 教妹学 Java:动态伴侣 Groovy

    点击上方"程序员小明",选择"星标" 今晚可以不加班! 00.故事的起源 "二哥,听说上一篇<多线程>被 CSDN 创始人蒋涛点赞了?&q ...

最新文章

  1. 有互感的电感的串并联
  2. Codeforces 1215
  3. python字典高级用法_Python 字典的高级用法
  4. 关于优酷开放SDK之setOnLoadingStatusListener
  5. 解决 invalid input detected at ‘^’ marker的问题
  6. Eclipse中的codetemplates.xml
  7. firefox使用掘金插件_Mozilla发布新的附加组件来修复旧版Firefox中的扩展禁用问题...
  8. IDEA必备插件提高企业开发效率(强烈推荐)
  9. Fluent NHibernate other example
  10. paip. dsl 编程语言优点以及 常见的dsl
  11. xmind安装及导出pdf
  12. 【转】金蝶KIS云·专业版私有云V16.0于2021年12月31日发布全新安装包
  13. Qt5开发的验厂考勤工资系统-计时计件综合版
  14. C程序内存泄露检测工具——Valgrind
  15. php文件上传漏洞攻击与防御
  16. 使用PreListener与InteractionListener的一个小发现
  17. Online Generation of Collision-Free Trajectories for Quadrotor Flight in Unknown Cluttered Environme
  18. JAVA中RandomAccess接口
  19. 22、T5L 迪文屏 C51开发之Hello World例程
  20. 如何防止域名被劫持?网站域名被劫持怎么办?怎么处理?

热门文章

  1. java设置rgb_设置Java中的自定义RGB颜色
  2. matlab励磁系统接不了,基于MATLAB的同步发电机励磁系统仿真.pdf
  3. 不要来日本IT业混饭
  4. 深度学习GPU服务器配置
  5. 如何在win10桌面添加备忘录?电脑桌面添加备忘录方法
  6. css之图形大全 菱形 心形 五角星 太极 三角形...
  7. 解读Linux标准LSB 3.0
  8. python+appium学习总结
  9. Freesurfer 合并
  10. 【MySQL数据库】MySQL 高级SQL 语句一