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年+大厂架构经验,资深技术专家,就职于阿里巴巴、淘宝、百度等一线互联网大厂。
关注「mikechen」公众号,获取更多技术干货!
后台回复【面试】即可获取《史上最全阿里Java面试题总结》,后台回复【架构】,即可获取《阿里架构师进阶专题全部合集》