方法的设置和调用
package com.yuecheng.method;
public class Demo03 {
public static void main(String[] args) {
int num1=50;
int num2=50;
int max=max(num1,num2);//调用方法
System.out.println(max);
}
public static int max(int num1, int num2){//比大小
int result=0;
if (num1==num2){
System.out.println("num1=num2");
return 0;//结束方法
}
if (num1>num2){
result=num1;
}else{
result=num2;
}
return result;
}
}
方法的重载
-
理解:重载(over loading)是指在一个类中,方法名字相同,而参数不同,返回值类型可以相同也可以不同。
package com.yuecheng.method; public class Demo03 { public static void main(String[] args) { double max=max(50.0,20.0);//调用方法 System.out.println(max); } public static double max(double num1, double num2){//与下方方法的名字相同,但内容不同。 double result=0.0; if (num1==num2){ System.out.println("num1=num2"); return 0;//结束方法 } if (num1>num2){ result=num1; }else{ result=num2; } return result; } public static int max(int num1, int num2){ int result=0; if (num1==num2){ System.out.println("num1=num2"); return 0;//结束方法 } if (num1>num2){ result=num1; }else{ result=num2; } return result; } }
-
重写是子类对父类的允许访问的方法实现过程进行重新编写,返回值和形参都不能改变。即使外壳不变,核心重写。
-
方法的重载规则:
- 方法名称必须相同。
- 参数列表必须不同(个数不同,类型不同或者参数排列顺序不同)
- 方法的返回值类型可以相同也可以不同。
- 但仅仅返回类型不同不足以成为方法的重载。
-
实现理论:方法名称相同时编译器会根据调用方法的参数个数,参数类型等逐个去匹配,以选择对应的方法,如果匹配失败,则编译器报错。
课下练习重载
-
当有三个数时,进行第二个方法,当有两个数时进行第一个方法
-
package com.yuecheng.method; public class Demo01 { public static void main(String[] args) { int a =1; int b=2; int c=20; System.out.println(add(a,b,c)); //或 int sum=add(a,b); System.out.println(sum); } public static int add(int a,int b){ return a+b; } public static int add(int a,int b,int c){ return a+b+c; } }