Java重载定义
如果一个类中有多个具有相同名称但参数不同的方法,则称为方法重载。
备注:参数不同的含义,是仅参数个数不同 ,或者 类型不同,或者顺序不同。
Java重载的作用
1.方法重载的主要好处:就是不用为了对不同的参数类型或参数个数,而写多个函数。
2. 重载方便了程序员可以根据不同的参数个数,顺序,类型,自动匹配方法,减少写过个函数名或方法名的重复步骤。
Java重载规则
判断方法重载的依据:
- 必须是在同一个类中;
- 方法名相同;
- 方法参数的个数、顺序或类型不同;
- 与方法的修饰符或返回值没有关系
重载的有效情况:
如下3种示例,都是有效的:
1.参数数量 add(int, int) add(int, int, int) 2.参数的数据类型 add(int, int) add(int, float) 3.参数的数据类型顺序。 add(int, float) add(float, int)
重载的无效情况:
当我说参数列表时,我不是在说方法的返回类型,例如,如果两个方法具有相同的名称,相同的参数并且具有不同的返回类型,那么这不是有效的方法重载示例。
如下所示:
int add(int, int) float add(int, int)
Java重载示例
我们还是来看示例,如下:
public class OverloadDemo {
//1. test()方法第一次重载,没有参数
void test() {
System.out.println("No parameters");
}
//2. test()方法第二次重载,一个整型参数
void test(int a) {
System.out.println("a: " + a);
}
//3. test()方法第三次重载,两个整型参数
void test(int a, int b) {
System.out.println("a and b: " + a + " " + b);
}
//4. test()方法第四次重载,一个双精度型参数
double test(double a) {
System.out.println("double a: " + a);
return a * a;//返回a*a的值
}
}
备注:需要注意的是,参数列表的不同指的是参数的数量不同,或者在参数数量相同的情况下,相同位置的参数类型不同。
mikechen睿哥
10年+一线大厂架构实战经验,就职于阿里、百度等一线大厂,操盘多个亿级大厂核心项目。
