1.方法重载的概念:
在同一个类中,可以定义名字相同并且参数可以不同的多个方法
2.方法重载的特点:
在同一个类中,方法名相同,参数不同, 与返回值无关:
情况:
1.参数个数不同
2.参数顺序不同
3.参数类型不同
案例:
public class Demo {
/*public int add() {
return 1;方法重载与返回值无关
}*/
public void add() {
System.out.println("无参add");
}
public void add(int data) {
System.out.println("int型参数add");
}
public void add(String name) {
System.out.println("String型参数add");
}
public void add(int data,String name) {
System.out.println("int型参数和String型参数add");
}
public void add(String name,int data) {
System.out.println("String型参数 int型参数add");
}
public void add(String name, int data, char sex) {
System.out.println("String型参数 int型参数 char型参数add");
}
}
调用:
在调用的时候,会根据不同的参数选择对应的方法
注意:如果类型,个数,顺序都相同,就会编译出错,因为编译器不知道要调用哪个方法
3.构成重载深层次原因:
只要两个方法编译器能区分,不会产生混淆,这就构成了重载
4.方法重载的好处:
1.方便记忆
2.根据重载机制,方法调用根据形参自动匹配调用(方法重载在调用时,根据参数列表的不同去适配不同的业务逻辑(适配器))
5.总结:
1.方法重载是让类已统一的方式处理不同类型数据的一种手段。多个同名函数同时存在,具有不同的参数个数/类型。重载over loading是一个类中多态性的一种表现。
2.java的方法重载,就是在类中可以创建多个方法,它们具有相同的名字,但具有不同的参数和不同的定义。调用方法时通过传递给它们的不同参数个数和参数类型来决定具体使用哪个方法,这就是多态性。(根据形参列表的不同产生的多态性)
3.重载的时候,方法名要一样,但是参数类型和个数不一样,返回值可以相同也可以不相同。无法以返回值作为重载函数的区分标准。
4.方法重载使得我们在调用时,根据参数列表的不同去适配不同的业务逻辑(适配器)
6.为什么要使用方法重载
- 可减少方法名,可以有效进行后期维护。
- 根据参数不同可实现不一样的效果。