方法的重载
-
重载就是在一个类中,有相同的函数名称,但形参不同的函数。
-
方法的重载的规则:
- 方法名称必须相同。
- 参数列表必须不同(个数不同、或类型不同、参数排列顺序不同等)。
- 方法的返回类型可以相同也可以不相同。
- 仅仅返回类型不同不足以成为方法的重载。
-
实现理论:
- 方法名称相同时,编译器会根据调用方法的参数个数、参数类型等去逐个匹配,以选择对应的方法,如果匹配失败,则编译器报错。
public class Name06 {
public static void main(String[] args) {
double max =max(10.5,20.3);//调用max方法 (实参)值传递
System.out.println(max);
}
//比大小 double
//修饰符 返回值类型 方法名 (参数 形参)
public static double max(double num1,double num2){
double result = 0; //定义一个变量 随便给个初始值 反正之后会被覆盖 用来存储结果
if (num1==num2){ //如果num1==num2 输出以下字符串
System.out.println("num1==num2");
return 0; //终止方法
}
if (num1>num2){ //如果num1>num2 把num1的值赋给result 覆盖result的初始值
result=num1;
}else { //否则当 num1<num2 把num2的值赋给result
result=num2;
}
return result; //return 要放在最下面 把result的结果返回出去
}
//比大小 int
//修饰符 返回值类型 方法名 (参数 形参)
public static int max(int num1,int num2){
int result = 0; //定义一个变量 随便给个初始值 反正之后会被覆盖 用来存储结果
if (num1==num2){ //如果num1==num2 输出以下字符串
System.out.println("num1==num2");
return 0; //终止方法
}
if (num1>num2){ //如果num1>num2 把num1的值赋给result 覆盖result的初始值
result=num1;
}else { //否则当 num1<num2 把num2的值赋给result
result=num2;
}
return result; //return 要放在最下面 把result的结果返回出去
}
}
命令行传参
- 有时候你希望运行一个程序时候再传递给它消息。这要靠传递命令行参数给main()函数实现。
public class Name03 {
public static void main(String args[]) {
//args.length 数组长度
for (int i = 0; i < args.length; i++) {
System.out.println("args[" + i + "]:" + args[i]);
}
}
}