方法的重载:
当方法名相同时,参数个数不同,是合法的,那么调用时,会根据参数调用相应的方法。
这就称之为方法的重载
在java中,如何区分方法的调用---根据两点:1、方法名 2、参数列表
注意:重载只和方法名和参数列表有关
什么情况下重载:
1、方法名相同
2、参数列表不同
A、列数的个数不同
B、参数的类型不同
如果两个方法的方法名相同,参数列表相同,只有声明的数据类型不同(返回值类型)
这时编译器会报错。不会构成重载。如下
public static int getMax(byte num1,byte num2){
}
public static byte getMax(byte num1,byte num2){
}这时不会是重载 编译器会报错 无法区分两个方法。
public变化时 也不会构成重载
java语法规范:重载只能由方法名和参数列表区分;权限修饰符、static、返回值声明的类型无关。
重载的特点:
查找方法时,根据输入的数据数据类型,按照最符合进行执行,如果有就执行。
如果没有,再向上转型进行匹配。
结果上看:执行参数的数据类型和数据最为相近的那个方法。
当然要有两个方法名相同,参数列表不同的方法 |