秦疆的Java课程笔记:47 方法 方法的重载

发布时间 2023-11-29 16:32:14作者: Acolyte_9527
  • 重载就是在一个类中,有相同的函数名称,但是形参不同的函数。
    (这里的“函数”,应该就是“方法”的意思,但是老师的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值。
//但返回值的类型可以被强制数据转换,所以不能作为判断是否方法重载的标准。