课时29:方法重载

简介: 课时29介绍了方法重载的概念:当方法名称相同但参数类型或个数不同时称为方法重载。通过定义加法处理方法,接收不同数量和类型的参数(如两个Int、三个Int或两个Double),展示了如何实现方法重载。代码示例中,`sum` 方法根据传入参数的不同调用相应的方法体。需要注意的是,方法重载与返回值类型无关,建议返回值类型保持一致以符合开发习惯。此外,`System.out.println()` 本身也是一个典型的方法重载示例,支持多种数据类型的输出。

课时29:方法重载

方法重载的定义:当方法名称相同,参数的类型或个数不同的时候就称为方法重载。那么下面先通过程序来做一个简单的分析,现在要定义一个加法处理方法,该方法接收两个 Int 变量、三个 Int 变量、两个 Double 变量的加法处理。


范例:采用方法重载进行定义

public class JavaDemo{
public static void main(string args[]){
  int resultA=sum(10,20);//调用两个int参数的方法
  int resultB=sum(10,20,30);//调用三个int参数的方法
  double resultC=sum(10.2,20.3);
  system.out.println(“加法执行结果:”+resultA)
  system.out.println(“加法执行结果:”+resultB)
  system.out.println(“加法执行结果:”+resultC)
}
public static int sum(int x,int y){
return x+y;
  }
public static int sum(int x,int y,int z){
return x+y+z;
  }
public static double sum(double x,double y){
return x+y;
  }
}

计算结果:

image.png

这个时候可以发现同一个方法名称但是可以根据调用时传递的不同参数的类型或个数实现不同方法体的调用,这样就实现了方法重载的定义。


千万要记住一点,方法的重载与方法的返回值类型没有任何的关系,它只跟参数有关系,但是在实际的开发之中请一定要把握一个基本的开发原则:只要是方法重载,强烈建议其返回值类型相同。


它确实支持不同返回值类型的情况,但在实际应用中,建议人为地将返回值类型定义为相同。像我之前定义的那种情况,它只是对操作的说明。方法的返回值类型可以不同,但从开发习惯的角度,建议保持一致。


范例:观察一个程序代码

public class JavaDemo{
public static void main(string args[]){
system.out.println(1);
  system.out.println(1.1);
  system.out.println(true);
  system.out.println('A');
  system.out.println(“Hello World!”);
}
}

你们有没有发现,很神奇的是,该方法可以接受整型、浮点型、布尔型和字符型。

所有的输出操作支持有各种数据类型,所以 System.out.println()本身就属于一个方法重载,而且是系统提供的。不同数据类型都可以实现正常输出。因此,这就是方法重载的定义形式。

相关文章
|
7月前
|
人工智能 运维 自然语言处理
通义灵码 AI实战《手把手教你用通义灵码写一个音乐电子小闹钟》
通义灵码DeepSeek版本相比qwen2.5,增强了深度思考和上下文理解能力,显著提升了开发效率,尤其适合代码能力较弱的运维人员,真正实现了“代码即服务”。
301 4
|
分布式计算 Java Hadoop
Hadoop垃圾回收机制
Hadoop垃圾回收机制
|
SQL 关系型数据库 MySQL
MySQL 8.0:filesort 性能退化的问题分析
用户将 RDS MySQL 实例从 5.6 升级到 8.0 后,发现相同 SQL 的执行时间增长了十几倍。本文就该问题逐步展开排查,并最终定位根因。
|
10月前
|
JSON 人工智能 算法
探索大型语言模型LLM推理全阶段的JSON格式输出限制方法
本篇文章详细讨论了如何确保大型语言模型(LLMs)输出结构化的JSON格式,这对于提高数据处理的自动化程度和系统的互操作性至关重要。
1240 48
|
SQL 前端开发 Linux
如何定位前后端的BUG
如何定位前后端的BUG
456 2
|
Java API
Java 8,如何对 ArrayList 元素进行排序?
【8月更文挑战第16天】
1557 2
Java 8,如何对 ArrayList 元素进行排序?
|
边缘计算 自动驾驶 5G
5G的网络拓扑结构典型模式
5G的网络拓扑结构典型模式
1580 4
|
供应链 大数据 调度
大数据在能源领域的应用有哪些?请举例说明。
大数据在能源领域的应用有哪些?请举例说明。
354 0