目录

方法的重载

陈述

如果有一系列方法,它们的功能都是类似的,只有参数有所不同,那么,可以把这一组方法名做成同名方法。

这种方法名相同,但各自的参数不同,称为方法重载(Overload)。

方法重载的返回值类型通常都是相同的,但可以不同。

方法重载的目的是,功能类似的方法使用同一名字,更容易记住,因此,调用起来更简单。

验证

public class OverloadTest {

    private int getSize() {
        return 100;
    }

    private int getSize(int m, int n) {
        return m * n;
    }
    
    private void getSize(int m, long n) {
        // 什么也不做
    }

    private long getSize(int n, int m, long z) {
        return  n * m * z;
    }
    
    private long getSize(int n, long z, int m) {
        return n * m * z;
    }
}

总结

实际上,在Java中有个方法签名,格式为“方法名(参数类型1,参数类型2,…)”,例如getSize(int, int)

重载的时候只要同一个方法名的方法签名不一样就可以。

因此,重载就是方法名相同,而参数数量不同参数类型不同不同参数类型的顺序不同。至于返回类型,同与不同都不关心。

重载常用于构造器重载,注意构造器不是方法,其返回值为void即没有返回值(你写return ;也不会报错)。