Java方法定义与使用详解:从基础语法到实际应用示例
文章目录

1. 方法的定义和使用 1.1 什么是方法
方法是一段代码,类似于C语言中的函数。
方法的可重用性:已编写的代码块可以多次重用。这时候这段代码就被抽象成了一个方法。
例如,判断一个数是否是素数就是一个典型的代码块,会被多次使用,应该被定义为一个方法。
1.2 方法定义语法
public static 方法名 方法返回值(参数){
//方法体代码
[return 语句];
}
// 方法调用
返回值变量 = 方法名称(实参...);
注意:
方法是否有返回值取决于方法的功能或功能。
例如:求某些数字的总和(int)=>我现在调用你的方法只是为了知道这些数字的总和。当然还有一个返回值,告诉调用者返回值是什么 => Return int
public 和 static 这两个关键字在这里有具体的含义,我们暂时不讨论。我们稍后会详细介绍它们。
定义方法时,可以没有参数。每个参数必须指定一个类型。
当方法被定义时,可能没有返回值。如果没有返回值,则返回值类型应写为void。
定义方法时的参数称为“形式参数”,调用方法时的参数称为“实际参数”。
方法的定义必须在类中,并且代码可以写在调用位置的上方或下方。
Java中没有函数声明这样的概念。不可能只使用方法的名称和参数而不具体实现。
1.3 调用方法
例如:定义一个方法来将两个整数相加
class Test {
public static void main(String[] args) {
int a = 10;
int b = 20;
// 方法的调用
int ret = add(a, b);
System.out.println("ret = " + ret);
}
// 方法的定义
public static int add(int x, int y) {
return x + y;
}
}
// 执行结果
ret = 30
方法调用的执行流程
基本规则
当一个方法被定义后,该方法的代码将不会被执行。只有在被调用时才会执行。
当方法被调用时,实参被赋值给形参。
参数传递后,就会执行方法体代码。
当方法执行时(遇到return语句时),执行完成,返回到方法调用位置继续执行。
一个方法可以被调用多次。
1.4 关于实参与形参的关系(重点)
代码示例
class Test {
public static void main(String[] args) {
int a = 10;
int b = 20;
swap(a, b);
System.out.println("a = " + a + " b = " + b);
}
public static void swap(int x, int y) {
int tmp = x;
x = y;
y = tmp;
}
}
//执行结果
a = 10 ;b = 20;
在 Java 中,方法的超参数仅按值传递。所谓传值,就是将实参的值复制给形参,对实参没有影响。
例如:
在方法之外交换两个局部变量的场景在Java中根本不存在。解决这个问题需要引入引用数据类型(数组或者对象)
方法的返回值是可选的。没有返回值的方法使用 void 声明。在没有返回值的方法中,仍然可以使用return;指示方法调用的提前终止。
2.方法重载(overload)
定义:
方法重载发生在“同一个类中”,定义了一组具有相同方法名和不同参数列表(不同类型或参数数量)的方法,而不管返回值如何!这样一组方法就称为重载Loading方法
例如:
Java 中的 System.out.println(任何参数类型都可接受)。其实是因为System类中定义了N个重载方法
注意:
下面的代码不是方法的重载,只是返回值类型不同。