在说方法重载前,先说说方法的定义;
方法定义:
1、Java方法是语句的集合,这个集合在执行一个功能;
2、方法是解决一类问题的步骤的有序集合;
3、方法包含于类或对象中;
4、方法在程序中被创建,在其它地方被引用
设计方法的原则:
方法的本意是功能块,就是实现某个功能的语句块的集合,设计方法最好保持方法的原子性, 一个方法只完成一个功能,这利于我们后期的扩展。
在这说明:System.out.println()也是方法
方法的重载:
定义: 重载就是在一个类中,有相同的函数名称,但形参不同的函数(即方法名相同,但里面的类型不完全相同)
规则:
1、方法名称必须相同;
2、参数列表必须不相同(可以是个数不同、或类型不同、参数排列顺序不同等);
3、方法的返回类型可以相同可以不相同;
4、仅仅返回类型不同不足以说明方法重载(可以强制转换。。。)
实现理论: 方法名虽然相同,但是形参不同,所以编译器会根据调用方法的参数个数、参数的类型进行配对,以选择对应的方法;如果匹配失败,则编译器报错
例子:
public static void main(String[] args){
int max=max(10,20,30);
System.out.println(max);
}
public static int max(double num1, double num2){
if(num1>num2){
result =(int)num1
}
return result;
}
public static int max(int num1, int num2){....}
public static int max(int num1,int num2 ,int num3){....} //没错这里的max方法就是方法的重载的体现