Java方法01:方法的定义、调用和重载
方法是实现某个特定功能的代码块的集合,其他语言中称为函数
设计方法的时候,要保持方法的原子性,即一个方法只完成一个功能,便于后续的拓展
定义
方法包含方法头和方法体
public class Hello {
//main方法
public static void main(String[] args) { //方法头
int sum = add(1, 2); //方法体
System.out.println(sum); //System是类,out是类的对象,对象调用println()方法
}
//自定义的add静态方法,静态方法只能调用静态方法
public static int add(int a, int b){ //修饰符 返回值类型 方法名(参数类型 参数名)
return a + b; //返回值
}
public void method(){
System.out.println("无返回值方法");
}
}
方法头
-
修饰符:指定了方法的访问类型,告诉编译器如何调用该方法,可选
-
返回值类型:方法返回值的数据类型,如果没有返回值则为void
-
方法名:自定义的方法名
-
参数类型:类似占位符,定义方法时称为形参,当方法被调用时,传递值给参数,这个值称为实参,可选
方法体
-
该方法具体实现的代码块
-
返回值,执行完return方法调用就会结束(只要不是void类型方法,必须要有返回值)
调用
当方法有返回值时
- 调用方法需要变量来接收,如int sum = add(1, 2);
当方法没有返回值时
- 直接调用即可,如method();
使用对象名.方法名(实参)调用(见面向对象部分)
重载
方法的重载,就是在一个类中,多个方法拥有相同的方法名,但是参数列表不同
具体规则:
- 方法名称必须相同
- 参数列表必须不同
- 返回值类型可以相同
- 仅仅返回值类型不同不能重载
public class Hello {
//main方法
public static void main(String[] args) {
int s1 = add(1, 2);
int s2 = add(1, 2, 3); //根据参数列表的不同来区分重载方法
double s3 = add(1.0, 2.0);
System.out.println(s1);
}
//自定义的add方法
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;
}
public static double add(double a, double b){ //参数列表必须不同
return a + b;
}
}