- 重载就是在一个类中,有相同的函数名称,但是形参不同的函数。
(这里的“函数”,应该就是“方法”的意思,但是老师的PPT上就是这么写的。) - 方法的重载规则:
- 方法名称必须相同
- 参数列表必须不同(个数不同,类型不同,排列顺序不同)
- 方法的返回值类型可以相同也可以不同
- 仅仅返回类型不同不足以成为方法的重载
- 实现理论:方法名称相同时,编译器会根据调用方法的参数个数、参数类型等去逐个匹配,以选择对应的方法,如果匹配失败,则编译器报错。
public class Demo1 {
public static void main(String[] args) {
double larger = max(20.0,10.0);
System.out.println(larger);
}
//比大小,int类
public static int max(int num1,int num2) {
int result =0;
if (num1 == num2) {
System.out.println("num1 == num2");
return 0;
}
if (num1 > num2) {
result = num1;
} else {
result = num2;
}
return result;
}
//比大小,double类
public static double max(double num1,double num2) {
double result =0;
if (num1 == num2) {
System.out.println("num1 == num2");
return 0;
}
if (num1 > num2) {
result = num1;
} else {
result = num2;
}
return result;
}
}
====演示====
20.0
//这时自动调用double类的比大小,返回也是double值。
//但返回值的类型可以被强制数据转换,所以不能作为判断是否方法重载的标准。
标签:Java,num1,num2,47,result,秦疆,double,重载,方法
From: https://www.cnblogs.com/Acolyte/p/17865198.html