Java SE基础篇(七)

一、方法概述

方法是将具有独立功能的代码块组织成一个整体,使其具有特殊功能的代码集。

注意:

  • 方法必须先创建才可以使用,该过程称为方法定义
  • 方法创建后并不是直接运行的,需要手动使用后才能执行,该过程称为方法调用。

二、方法的定义与调用

①定义

1
2
3
public static void 方法名{
//方法体
}

②调用

1
方法名();

举个栗子:

其中main方法中调用了isEvwn方法,其中传了一个用户输入的值num,然后isEvwn方法接收到了这个值,然后进一步判断。

这里涉及到带参数的方法,一般的格式如下

  • 单个参数:public static void isEvwn(int num){···}
  • 多个参数:public static void max(int num1,int num2···){···}

三、形参与实参

形参:方法定义中的参数,用来接收调用者传递的参数

等同于变量定义格式,例如:int num

形参只有在方法调用的时候,虚拟机才会分配内存单元,在方法调用结束后便会释放所分配的内存单元。

实参:方法调用中的参数,用于调用时传递给方法的参数

等同于使用变量或常量

在值传递调用过程中,只能把实参传递给形参,不能反过来。在引用时,实际是将实参引用的地址传递给了形参

四、带返回值的方法

格式

1
2
3
public static 数据类型 方法名(参数){
return 数据;
}

return后的返回值要与方法定义的数据类型一致,否则报错。

五、带返回值方法调用

  • 格式1:方法名(参数);
  • 格式2:数据类型 变量名=方法名(参数);

方法的返回值通常会使用变量接收,否则该返回值将无意义。

修改前面的判断奇数和偶数的代码:

六、注意事项

  • 方法不能嵌套定义
  • void表示无返回值,可以省略return,也可单独书写return,后面不加数据
  • 对于基本数据类型的参数,形式参数的改变,不影响实际参数的值
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    public class day7_1 {
    public static void main(String[] args) {
    int num=100;
    System.out.println("调用change前"+num); //100
    change(num);
    System.out.println("调用change后"+num); //100
    }
    public static void change(int num){
    num=200;
    }

    }
  • 对于引用类型的参数,形式参数的改变,影响实参的值
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    public class day7_1 {
    public static void main(String[] args) {
    int[] arr={10,20,30};
    System.out.println(arr[1]); //20
    change(arr);
    System.out.println(arr[1]); //200
    }
    public static void change(int[] arr){
    arr[1]=200;
    }
    }

    七、方法重载

    方法重载概念

    在同一个类中, 允许存在一个以上的同名方法, 只要它们的参数个数或者参数类型不同即可。

方法重载指同一个类中定义多个方法之间的关系,满足下列条件的多个方法相互构成重载

  • 多个方法在同一类中
  • 多个方法具有相同的方法名
  • 多个方法的参数不同类型不同或者数量不同

方法重载特点

  • 重载仅对应方法的定义,与方法调用无关
  • 重载仅针对同一个类中方法的名称与参数进行识别,与返回值无关,换句话说不能通过返回值来判定两个方法是否相互构成重载。

参考

深入理解java的形参和实参

思维导图

Java EE思维导图

请我喝杯咖啡吧~

支付宝
微信