Java 方法

110 阅读3分钟

Java 方法

实现特定功能的一段代码,可反复使用。

方法的定义

public static void 方法名() {
    // 方法体
}
  • 方法名的命名要遵循命名规则。
  • 一般是将可复用的代码,定义在方法内部。

方法定义的位置

方法要定义在类的内部。

方法的调用

静态方法(就是用static修饰的方法)在类的内部可以直接用方法名调用。

方法的执行流程

方法调用时,会优先执行方法内部的代码,结束后,返回方法调用处,继续向下执行。

方法的参数

多数情况下,方法与调用者之间需要数据的交互;调用者必须要提供必要的数据,才能使方法完成相应的功能。

  • 带参方法的定义
public static void 方法名(形式参数) {
    // 方法体
}
  • 方法的调用
方法名(实际参数);

常见错误

  • 已在类 类名 中定义了方法 方法名:在同一个类中定义了多个方法名相同,参数类型相同的方法。
  • 无法将类 类名 中的方法 方法名 应用到给定类型:定义了一个方法,但在调用时参数的类型对不上。
  • 不兼容的类型:int 转换到 char 可能会有损失:定义的方法参数类型为 char ,但在调用方法时传入的参数类型为 int
  • 不兼容的类型:double 转换到 int 可能会有损失:定义的方法参数类型为 int ,但在调用方法时传入的参数类型为 double

补充

  • 调用带参方法时,依次传入实参,类型、个数、顺序必须与形参对应。

返回值与返回值类型

方法执行后的返回结果。

方法执行后,一些情况下无需返回结果;另一些情况下需要返回结果。

返回值类型:基本数据类型、引用数据类型、void。

public static 返回值类型 方法名(形式参数列表) {
    // 方法体
    return value; // 返回值
}

一个方法只能有一个返回值,如果方法包含分支,结果要与返回值类型一致或兼容。

public static String example(int num){
    if (num % 2 == 0) {
        System.out.println("num是偶数");
    } else {
        System.out.println("num是奇数");
    }
}
  • 错误示例
public int void example(int a, int b) {
    return a + b;
    return a - b;
}

补充

  • 一个类中可以的定义多个方法,方法之间属于并列关系,不可以嵌套。
  • 单一职责原则(一个方法只做一件事)。
  • 方法的好处
    • 减少用于代码
    • 提高复用性
    • 提高可读性
    • 提高可维护性

递归

  • 解决具有既定规律的问题时,在方法内部再次调用自身方法的一种编程方式。
  • 当需要解决的问题可以拆分成若干个小问题,大小问题的解决方式相同
  • 设置有效的出口条件,可以让调用链上的方法都可以正确的返回,避免无穷递归。