Java学习之路--method--方法重载

发布时间 2023-09-20 13:54:56作者: 寂灭无言
package com.chao.method;

//Java中都是值传递(Java)和 引用类型
public class Demo02 {
public static void main(String[] args) {

int max = max(40,50);//实参40,50
System.out.println("最大的数是" + max);

}

//比大小 形参num1,num2
public static int max(int num1, int num2){
int result = 0;
if (num1 == num2){
System.out.println("num1==num2");
return 0;//return终止方法
}
if (num1 > num2){
result = num1;
}else{
result = num2;
}
return result;
}
}
//
//
package com.chao.method;

//方法的重载
/*
重载就是在一个类中,具有相同的函数(方法)名称,但形参不同的函数(方法)
方法重载的规则:
1.方法名称必须相同
2.参数列表必须不同(个数不同、或类型不同、或参数排列顺序不同)
3.方法的返回值类型可以相同也可以不相同
4.仅仅返回类型不同不足以成为方法的重载

实现理论:
方法名称相同时,编译器会根据调用方法的参数个数,参数类型等去逐个匹配,来选择对应的方法,
如果匹配失败,则编译器报错
*/
public class Demo03 {
public static void main(String[] args) {
int max = max(40, 50);//如果传入的值是int类型的,调用int类型的方法max
// double max = max(40.0,50.0);//如果传入的值是double类型的,调用double类型的方法max
System.out.println("最大的数是" + max);

}

//比大小
public static int max(int num1, int num2) {
int result = 0;
if (num1 == num2) {
System.out.println("num1==num2");
return 0;//return终止方法
}
if (num1 > num2) {
result = num1;
} else {
result = num2;
}
return result;
}

//方法重载
public static double max(double num1, double num2) {
double result = 0;
if (num1 == num2) {
System.out.println("num1==num2");
return 0;//return终止方法
}
if (num1 > num2) {
result = num1;
} else {
result = num2;
}
return result;
}
}