方法的定义和调用
调用方法: 对象名.方法名(实参列表)
Java支持两种调用方法的方式,根据方法是否返回值来选择。
当方法返回一个值的时候,方法调用通常被当做一个值。例如:
int larger = max(30,40);
如果方法返回值是void,方法调用一定是一条语句。例如:
System.out.println("num1=num2");
package Method;
public class Demo01 {
public static void main(String[] args) {
int sum = add(1, 2);
System.out.println(sum);
}
//加法
public static int add(int a, int b){
return a+b;
}
}
package Method;
public class Demo02 {
public static void main(String[] args) {
int MAX =max(10,20);
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;//return除了返回值,还有终止方法的作用
}
if(num1<num2){
result=num2;
}else{
result=num1;
}
return result;
}
}
方法的重载
重载就是在一个类中,有相同的函数名称,但形参不同的函数。
原理:方法名称相同时,编译器会根据调用方法的参数个数、参数类型等去逐个匹配,以选择对应的方法,如果匹配失败,则编译器报错。
★方法名称必须相同。
★参数列表必须不同(个数不同、或类型不同、参数排列顺序不同等)。
package Method;
public class Demo02 {
public static void main(String[] args) {
int MAX =max(10,20);
double MAX2 =max(10.1, 20.1);
System.out.println(MAX);
System.out.println(MAX2);
}
public static int max(int num1, int num2){
int result = 0;
if(num1 == num2){
System.out.println("num1=num2");
return 0;//return除了返回值,还有终止方法的作用
}
if(num1<num2){
result=num2;
}else{
result=num1;
}
return result;
}
public static double max(double num1, double num2){
double result = 0;
if(num1 == num2){
System.out.println("num1=num2");
return 0;
}
if(num1<num2){
result=num2;
}else{
result=num1;
}
return result;
}
}