java语言中方法的重载

news2024/12/28 22:06:43

文章目录

  • 前言
  • 一、重载是什么?
  • 二、使用步骤
    • 1.实操展示
    • 2.注意事项
  • 总结

前言

        小时候,我们学会了十以内的加法,却对十以外的加法感到害怕,但从现在来看,它们都属于加法,只是计算方法略有不同。方法的重载也一样,同样的方法名,通过增减参数,改变参数的顺序,改变参数的数据类型来应对各种情况。


一、重载是什么?

        重载,将同一方法,通过增减参数改变参数顺序改变参数数据类型的方式,应对使用此方法的其他情况

二、使用步骤

1.实操展示

public class Demo {
	
	int add(int a,double b) {    //add方法第一种类型,整数类型a+浮点数类型b
		System.out.println((int)(a+b));
		return (int)(a+b);
	}
	
	int add(double b,int a) {    //add方法第二种类型,浮点数类型b+整数类型a 调换了参数的位置
		System.out.println((int)(a+b));
		return (int)(a+b);
	}
	
	int add(int a,double b,float c) {    //add方法第三种类型,三个数相加 增加了参数的个数
		System.out.println((int)(a+b+c));
		return (int)(a+b+c);
	}
	
	public static void main(String[] args) {
		Demo demo1 = new Demo();
		Demo demo2 = new Demo();
		Demo demo3 = new Demo();
		demo1.add(512,512.0);
		demo2.add(512.0,512);
		demo3.add(1000, 20.0, 4);
	}
}

         以上代码,add()方法,编写了三个

                第一个:整数类型 a + 浮点数类型 b  强转化为整数类型

                第二个:浮点数类型 b + 整数类型 a  强转化为整数类型

                第三个:整数类型 a + 浮点数类型 b + 浮点数类型 c  强转化为整数类型

         以上为 加法 可能遇到的情况,add()方法中,括号的内容,由具体数据更改成 实例化对象,便能循环使用方法

        输出结果:

 

2.注意事项

        (1)方法,通过在括号增减参数改变参数顺序改变参数数据类型,实现重载

        (2)重载的参数类型都相同,互换位置,两个方法会报错

                如图:

     

                原因:当调用方法,括号中输入参数,逻辑上不知道选择哪一个方法

                结论:增减参数改变其数据类型  皆能 实现重载

                           改变参数顺序参数个数不变其数据类型还都相同 不能 实现重载

        (3)建议重载的方法:实现效果相同,只是过程多了点东西,这样符合重载的逻辑,编写代码时更加合理,不理解这句话可以重看一下上面的实操展示

                那想让同个方法,实现效果不同怎么办?

                这时候就要用到“方法的多态”


总结

        以上就是java中方法的重载,本文仅简单介绍了方法的重载,怎么利用这个性质,还要靠咱们程序员的想象力和项目经理的天马行空了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/653821.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【备战秋招】每日一题:2023.05-B卷-华为OD机试 - 阿里巴巴找黄金宝箱(IV)

2023大厂笔试模拟练习网站(含题解) www.codefun2000.com 最近我们一直在将收集到的各种大厂笔试的解题思路还原成题目并制作数据,挂载到我们的OJ上,供大家学习交流,体会笔试难度。现已录入200道互联网大厂模拟练习题&a…

Computer Graphics From Scratch - Chapter 9

系列文章目录 简介:Computer Graphics From Scratch-《从零开始的计算机图形学》简介 第一章: Computer Graphics From Scratch - Chapter 1 介绍性概念 第二章:Computer Graphics From Scratch - Chapter 2 基本光线追踪 第三章:Computer Gr…

IEEE 最佳论文提名 | TraND:用步态算法优化身份识别

来源:投稿 作者:小灰灰 编辑:学姐 论文标题:TraND: Transferable Neighborhood Discovery for Unsupervised Cross-domain Gait Recognition 论文链接: https://arxiv.org/pdf/2102.04621v1.pdf 步态识别开始应用在公共场域身份…

centos mysql安装配置远程访问

包含以下三个部分:mysql安装,mysql密码重置、mysql配置远程访问。 一 centos安装mysql 1、wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm 2、yum -y install mysql57-community-release-el7-10.noarch.rpm 3、yum…

to be delete

一、grafana版本升级 1.1 还是先跟着官网简单走一波 建议经常升级Grafana,以获取最新的修补程序和增强功能。 为了实现这一点,Grafana升级向后兼容,并且升级过程简单快捷。升级通常是安全的(在许多次要版本和一个主要版本之间&a…

Python习题进阶

1.十六进制数字的大小 描述 计算的世界,除了二进制与十进制,使用最多的就是十六进制了,现在使用input读入一个十六进制的数字,输出它的十进制数字是多少? 输入描述: input读入一个十六进制数字&#xf…

微信支付服务商接入指引(企业)

目录 一、官方指引二、申请流程1.进入服务商平台2.填写资料3.账户验证&资料审核 三、登录 一、官方指引 https://kf.qq.com/faq/161220iqeAfA1612202yeURB.html 二、申请流程 1.进入服务商平台 https://pay.weixin.qq.com/static/partner_guide/service_provider.shtml…

【JVM快速入门篇】

本笔记内容为狂神说JVM快速入门篇部分 目录 一、JVM的位置 二、JVM体系结构 三、类加载器(ClassLoader) 四、双亲委派机制 双亲委派机制的作用 五、沙箱安全机制 六、Native ​编辑Native Method Stack 本机方法栈 Native Ilnterface本地接口…

低代码靠谱吗?实操一遍就知道了

一、前言 最近一段时间,“低代码”概念特别流行,有些人特别推崇它,也有些人对此不屑一顾。 推崇它的人认为,它有很多优点,比如说能够降低开发周期,提高系统开发效率,降低开发成本,学…

使用HBuilder将h5网站打包成app 自行打包

1、点击manifest.json,基础配置,APP名字,是否全面屏 2、然后点击图标配置,选好后点自动生成所有图标并替换 点击模块配置,选VideoPlayer和X5内核 然后顶部菜单选发行,选择原生App-云打包 选公测证书然后…

WPF教程-XAML介绍

XAML介绍 1.定义 为构建应用程序用户界面而创建的一种新的“可扩展应用程序标记语言”,提供一种便于扩展和定位的语法来定义和程序业务逻辑分离的用户界面。 XAML 是一种 XML(Extensible Markup Language)的扩展,XAML 是 WPF 中…

云计算——云计算与虚拟化的关系

作者简介:一名云计算网络运维人员、每天分享网络与运维的技术与干货。 座右铭:低头赶路,敬事如仪 个人主页:网络豆的主页​​​​​ 目录 前言 一.虚拟化 1.什么是虚拟化 2.虚拟化技术作用 二.云计算与虚拟化的关系 三.虚…

一文让非技术宅读懂为什么AI更“喜欢”GPU而不是CPU?

一、引言 随着人工智能(AI)技术的快速发展,深度学习等算法在图像识别、自然语言处理、数据挖掘等方面表现出了强大的能力。而这些算法的底层计算,往往对硬件有着极高的要求。为了满足这些需求,越来越多的研究和工程实…

关于不同型号电脑谷歌浏览器下载指定版本的方法(超详细教程)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言1、根据链接打开地址2、页面说明3、下载过程(1)选中指定版本点击它(这里以52.0.27.37.1为例)(2&…

美国访学博后答疑|尚未出国DS-2019表格过期了怎么办?

美国执J1签证者尚未出国,但DS-2019表格过期了怎么办?本篇知识人网老师就以下三种情况,统一做答疑建议。 美国访问学者和博士后的签证类型多是J1签证,需要由美国接收方将签字后的DS2019表邮寄给国内,申请者本人在表格正…

多项安全新功能为云上安全保驾护航,就在亚马逊云科技re:Inforce全球大会

亚马逊云科技re:Inforce 2023全球大会于当地时间2023年6月13日在美国加州安纳海姆拉开帷幕。在大会上,亚马逊云科技宣布推出十多项安全新服务及功能,下面就来一览本次大会的风采。 “Security is our top priority.” “安全是我们的首要优先级”&#…

Socket 传情:使用 Python 发送 GET 请求

文章目录 参考描述HTTPHTTP 报文HTTP 请求报文请求行请求头空行请求体 HTTP 响应报文状态行响应头空行响应体 HTTP 请求方法HTTP 与 TCP 协议HTTP 协议TCP 协议 httpbin.org socket 模块socket.socket()Socket().connect()Socket().send() 与 Socket().sendall()Socket().recv(…

AI实战营第二期 第十节 《MMagic 代码课》——笔记11

AI实战营第二期 第十节 《MMagic 代码课》 MMagic (Multimodal Advanced, Generative, and Intelligent Creation) 是一个供专业人工智能研究人员和机器学习工程师去处理、编辑和生成图像与视频的开源 AIGC 工具箱。 MMagic 允许研究人员和工程师使用最先进的预训练模型&…

wms add window 流程

二、WMS 窗口添加流程 /frameworks/base/services/core/java/com/android/server/wm/ActivityTaskSupervisor.java boolean realStartActivityLocked(ActivityRecord r, WindowProcessController proc,boolean andResume, boolean checkConfig) throws RemoteException {.....…

ESP-C2模组 AT示例程序

ESP32C2 AT固件使用 ESP32 C2模组,如图1-1所示 图1-1 ESP32 C2模组 ESP32 C2开发板,如图1-2所示 图1-2 ESP32 C2开发 方案亮点 1、完整的 WiFi 子系统,符合 IEEE 802.11b/g/n 协议,具有 Station 模式、SoftAP 模式、SoftAP Stat…