java函数的重载,说白了就是函数块函数名一样,但函数类型和参数类型和参数列表个数不同

重载之和参数列表有关系,与返回值无关

java函数重载

函数重载铺垫如下图

函数重载铺垫

上图功能显示,功能一致所以功能一致所以用的功能函数名一致,都改用add函数

当出现函数块中函数名称一致时,如何区分去执行代码块,则通过函数定义的形参个数来确定,如下图

函数重载入门案例启发

由上例题可以清晰的明白如果参数列表个数与定义过的函数形参列表个数不一致时,则会编译失败,系统会提示你没有定义过,如下图代码与编译结果

参数列表个数不一致时编译失败无法重载

从上面三个案例可以明确的知道重载的形象表现,即函数块名称一致,形参列表个数不同,对应匹配执行。如调用的形参列表与定义的函数块形参列表不一致时则编译失败,重载失败

特别注意如下图代码块

这种函数名一致列表一致不叫重载

如上图这种函数名一致列表一致不叫重载,叫啥呢?哈哈哈

叫一模一样啦,有木有一种1+1=多少时的那种突然的困惑哈哈哈哈~~~~

一调用函数,都不值调用第一个add函数块好还是第二个add函数块好了,我们没有疯,只不过运行的虚拟机已经疯了(为了造福广大运行系统后期写代码多的时候千万要注意下哟,至少在函数名一致时,形参列表切记不可一致)

从上意会到:

什么时候用重载函数?

当定义的函数功能块相同,但参与运算的位置内容不同时,那么,这是就定义一个相同的函数名称以表示功能,方便阅读,

而通过形参列表的不同来区分不同名函数。

//打印一个所谓的99乘法表,但是有些用户不想算到9 ,只想算到3?5?或6!那怎么办?

//此时则再定义一个函数块实现重载

函数重载99乘法表经典案例

以上就是一种典型的重载形式,函数名不用变,只需要变函数形参列表即可

明确了什么是重载后,我们在升华下咱们的程序猿档次,优化重复性代码,提高了代码的复用性。

从上的代码块来分析,除了形参个数不同外,函数名和代码块功能几乎是一模一样的,对于程序猿大师来说,这真的是“无法直视”那么该如何优化呢?如下图程序猿大师初级优化

大师的初级优化,你get到什么了

怎么样?两个代码图,你get到什么了吗?

重复性代码不见了,而且提升了代码的重复性,有木有?

给定原函数,列出多个函数对比,问哪个函数重载了?如下图:

重载案例对比加深印象

从上列咱们可以基本认识到函数重载的具体表现方式,主要区分在函数形参列表的个数,参数1和参数2,是有区分顺序的,按顺来区分,类型不同也算重载,但是注意一下,重载的概念和实现方式和返回值类型无关呢~~~

上面提供了编译代码,有兴趣的朋友可以编译运行试试哈。

每天都会更新知识点和案例分享哦

点击关注或收藏,与我们一起从基础开始学习java每天更新一点新知识,新案例,每天吸收一点新能量。

点击评论区,对于细节的优化,留言,一起探讨哟。

java方法重载实事例_零基础java入门教程函数重载function实例化格式案例相关推荐

  1. 零基础python嵌入式开发_零基础Python入门教程

    第01课 python基础之python介绍 课时1python的职业方向和工资 试听 00 : 15 : 54 开始学习 课时2环境的安装 试听 00 : 14 : 16 开始学习 课时3基础班课程 ...

  2. 取得数组下标_《零基础C++入门教程》——(8)搞定二维数组与循环嵌套

    一.学习目标 了解二维数组的使用方法 了解循环嵌套的使用方法 目录 预备第一篇,使用软件介绍在这一篇,C++与C使用的软件是一样的,查看这篇即可:<零基础看得懂的C语言入门教程>--(二) ...

  3. sql数据库教程百度云_【推荐】零基础水彩画入门教程|零基础水彩教程百度云...

    零基础水彩画入门教程|零基础水彩教程百度云! 照着教程画却总是画不好,这些水彩技法你真的学会了吗? 盲目地照着葫芦画瓢,不懂控制确实很难学会,可以关注一下公众号:每日学绘画,可以领取水彩电子书和全套视 ...

  4. 零基础CSS入门教程(1)–初识CSS

    点此查看 所有教程.项目.源码导航 本文目录 1. 前言 2. HTML与CSS区别 3. CSS有哪些功能 4. 如何学习CSS 1. 前言 学习CSS是离不开HTML的,HTML是CSS的基础,如 ...

  5. 零基础JavaScript入门教程(1)–走进JavaScript的世界

    点此查看 所有教程.项目.源码导航 本文目录 1. 前言 2. JS的历史 3. JS的地位 4. JS与HTML.CSS的区别 5. JS是真正的编程语言 6. JS的组成部分 7. 小结 1. 前 ...

  6. 零基础Bootstrap入门教程(0)--教程背景与目录

    点此查看 所有教程.项目.源码导航 本文目录 1. 背景 2. 教程目录 3. 源码下载 1. 背景 在学习完成HTML/CSS/JS/jQuery零基础入门教程后,自然而然我们要进入Bootstra ...

  7. 零基础SSM入门教程(0)--教程背景与目录

    点此查看 零基础JavaWeb全栈文章目录及源码下载 1. 背景 本教程的出发点是写一个比较条理,比较全面的SSM系列教程,首先造福自己.理顺自己的知识体系,然后也造福大众,因为网上现存的资源相对比较 ...

  8. 【PR】零基础快速入门教程

    [PR]零基础快速入门教程 PR(Premiere)能做什么? PR欢迎界面及新建项目 工作区及窗口说明 导入文件 建立序列 视频剪辑 添加字幕 导出视频 使用软件:Premiere2020 新年卷起 ...

  9. java培训学费_零基础Java培训大概多少钱

    Java培训多少钱,这个问题是我们准备学习Java的小伙伴比较关注的,特别是从零基础开始来学习Java的小伙伴,对这个行业不太了解,为了防止上当受骗,了解清楚还是比较好的,那么零基础Java培训大概多 ...

最新文章

  1. python与vb可以互换吗_vb能配合python写程序么?
  2. 模拟namenode挂掉利用secondary namenode恢复
  3. How to Secure Your Smart Contracts: 6 Solidity Vulnerabilities and how to avoid them (Part 2)
  4. docker fig mysql_docker管理工具 Fig 配置文件fig.yml的详解
  5. 性能优化实战|使用eBPF代替iptables优化服务网格数据面性能
  6. Spring Boot整合Thymeleaf模板引擎
  7. css复选框如何调大一些,创建CSS放大复选框
  8. 【转】为什么不能使用字符流读取非文本的二进制文件?
  9. win32 destroywindow函数
  10. 03_ Flume采集(监听)目录到HDFS案例
  11. 图像匹配之序贯相似性检测法匹配
  12. HTML5+JS调用摄像头
  13. js中ajax提交表单提交表单提交,JS中ajax请求提交form表单
  14. PNG,JPEG,BMP,JIF图片格式详解及其对比
  15. 数学建模技巧总结(一)
  16. Vue 获取最近一个月,前三个月, 最近半年,最近一年, 当前月末日期
  17. 微信打不开链接怎么办,微信跳转外部浏览器打开
  18. androidstudio图片居中_Android imageView图片按比例缩放-Fun言
  19. Tomcat架构详解
  20. 算法二十二:倒水问题

热门文章

  1. 基于java+swing+mysql+JFeeChart的企业人力资源管理系统(2)续
  2. Leetcode 349.两个数组交集(哈希容器unordered_set)
  3. MySQL工具名字_MySQL客户端工具及SQL讲解
  4. 下行物理信道rs_5G物理层服务模型
  5. pyqt5与html数据交互原理,pyqt5与本地html进行js交互
  6. state的简写方式
  7. 电脑服务器传文件夹吗,服务器和电脑传文件夹吗
  8. 过滤特征_LR训练优化-稀疏特征过滤
  9. python 切片步长_python切片步长
  10. mysql error log清理_手动删除mysql日志/var/log/mysql/error.log导致的mysql无法启动