Java 方法

方法是执行特定任务的代码块。在本教程中,我们将通过示例了解 Java 方法是什么、如何定义方法以及如何在 Java 程序中使用方法。

在本教程中,我们将通过示例了解 Java 方法是什么、如何定义方法以及如何在 Java 程序中使用方法。

Java 方法

方法是执行特定任务的代码块。方法都定义在 Java 类中。

假设您需要创建一个程序来创建一个圆并为其着色。您可以创建两种方法来解决此问题:

  • 一个画圆的方法
  • 一个给圆圈上色的方法

将复杂的问题分成更小的块使您的程序易于理解和重用。

在 Java 中,有两种类型的方法:

  • 用户定义的方法:我们可以根据自己的要求创建自己的方法。
  • 标准库方法:这些是 JDK 中可供使用的内置方法。

让我们首先了解用户定义的方法。

声明一个 Java 方法

声明方法的语法是:

returnType methodName() {
  // method body
}

这里,

  • returnType - 它指定一个方法返回什么类型的值。例如,如果一个方法的返回类型是 int ,那么它返回一个整数值。

    如果该方法不返回值,则其返回类型为 void

  • methodName - 它是一个标识符,用于引用程序中的特定方法。

  • 方法体- 它包括用于执行某些任务的编程语句。方法主体包含在花括号内 { }

例如,

int addNumbers() {
// code
}

在上面的例子中,方法的名称是 adddNumbers() ,返回类型是 int . 我们将在本教程的后面了解有关返回类型的更多信息。

这是声明方法的简单语法。但是,声明方法的完整语法是:

modifier [static] returnType nameOfMethod (parameter1, parameter2, ...) {
  // method body
}

说明:

  • modifier- 它定义访问类型,可以是公共的、私有的,等等。要了解更多信息,请访问Java 访问修饰符

  • static - 如果我们使用 static 关键字,则可以在不创建对象的情况下访问它。

    例如,标准Math 类sqrt() 方法是静态的。因此,我们可以直接调用 Math.sqrt() 而无需创建 Math 类的实例。

  • parameter1, parameter2 - 这些是传递给方法的参数。我们可以将任意数量的参数传递给一个方法。

在 Java 中调用方法

在上面的例子中,我们声明了一个名为 addNumbers() 的方法。 下面是我们如何调用 addNumbers() 方法。

addNumbers();

Java方法调用
Java方法调用

示例 1:Java 方法

public class Main {

  // 创建方法
  public int addNumbers(int a, int b) {
    int sum = a + b;
    // 返回值
    return sum;
  }

  public static void main(String[] args) {

    int num1 = 25;
    int num2 = 15;

    // 创建对象
    Main obj = new Main();
    // 调用方法
    int result = obj.addNumbers(num1, num2);
    System.out.println("和 = " + result);
  }
}

输出

和 = 40

在上面的例子中,我们创建了一个名为 addNumbers() 的方法。该方法有两个参数 ab。 注意下面这行代码:

int result = obj.addNumbers(num1, num2);

在这里,我们通过传递两个参数 num1num2 来调用该方法。 由于该方法需要返回某个值,因此我们将该值存储在 result 变量中。

注意:该方法不是静态的。因此,我们使用类的对象调用方法。

Java 方法返回类型

Java 方法可能有返回值,也坑没有返回值。我们使用return 语句返回任何值。例如,

int addNumbers() {
  ...
  return sum;
}

在这里,我们返回 sum 变量. 由于函数的返回类型是 intsum 变量应该是 int 类型。否则会产生错误。

如果方法不返回任何值,我们使用 void 关键字作为方法的返回类型。例如,

public void square(int a) {
  int square = a * a;
  System.out.println("Square is: " + a);
}

示例 2:方法返回类型

public class Main {

  public static int square(int num) {
    return num * num;
  }

  public static void main(String[] args) {
    int result;

    // 调用方法并将方法的返回值赋值给 result 变量
    result = square(10);

    System.out.println("10 的平方值是:" + result);
  }
}

输出

10 的平方值是:100

在上面的程序中,我们创建了一个名为 square() 的方法。该方法将一个数字作为其参数并返回该数字的平方。

Java 方法调用返回一个值
Java 方法返回值

Java 中的方法参数

方法参数是方法接受的值。如前所述,一个方法也可以有任意数量的参数。例如,

// 有 2 个参数的方法
int addNumbers(int a, int b) {
  // code
}

// 没有参数的方法
int addNumbers(){
  // code
}

如果创建了一个带参数的方法,我们需要在调用该方法时传递相应的值。例如,

// 调用有 2 个参数的方法
addNumbers(25, 15);

// 调用没有参数的方法
addNumbers()

示例 3:方法参数

public class Main {

  // 此方法没有参数
  public void display1() {
    System.out.println("没有参数的方法");
  }

  // 此方法有 1 个参数
  public void display2(int a) {
    System.out.println("带单个参数的方法:" + a);
  }

  public static void main(String[] args) {

    // 创建对象
    Main obj = new Main();

    // 调用没有参数的方法
    obj.display1();

    // 调用 1 个参数的方法
    obj.display2(24);
  }
}

输出

没有参数的方法
带单个参数的方法:24

例子中方法的参数是 int 。因此,如果我们传递参数的数据类型不是 int ,编译器将抛出错误。这是因为 Java 是一种强类型语言。

! 注意: 在方法调用期间传递给方法的参数称为实参(实际参数)。方法定义所接受的参数称为形参(形式参数),我们需要指定形式参数的类型。并且,实际参数和形式参数的类型应该始终匹配。

标准库方法

标准库方法是 Java 的内置方法。这些标准库与 Java 类库 (JCL) 一起出现在带有 JVM 和 JRE 的 Java 归档 (*.jar) 文件中。

例如,

  • print() 是一种方法 java.io.PrintSteam 。该 print("...") 方法在引号内打印字符串。
  • sqrt()Math 类的方法。它返回一个数的平方根。

这是一个工作示例:

示例 4:Java 标准库方法

public class Main {
  public static void main(String[] args) {

    System.out.print("4 的平方根是:" + Math.sqrt(4));
  }
}

输出

4 的平方根是:2.0

使用方法有什么好处?

  1. 主要优点是代码可重用性。我们可以一次编写一个方法,并多次使用它。我们不必每次都重写整个代码。把它想象成“一次编写,多次重复使用”。

  2. 方法使代码更具可读性,更易于调试。在这里,下面例子 getSquare() 方法将计算平方的代码保留在一个块中。因此,使其更具可读性。

示例 5:用于代码可重用性的 Java 方法

public class Main {

  // 定义方法
  private static int getSquare(int x){
    return x * x;
  }

  public static void main(String[] args) {
    for (int i = 1; i <= 5; i++) {

      int result = getSquare(i);
      System.out.println(i + " 的平方是:" + result);
    }
  }
}

输出

1 的平方是:1
2 的平方是:4
3 的平方是:9
4 的平方是:16
5 的平方是:25

在上面的程序中,我们创建了一个名为 getSquare() 计算数字平方的方法。这里,该方法用于计算小于 6 的数字的平方。

在循环中,可以一次又一次地使用重复使用此方法,而不用重复的编码。