java如何调用方法
调用实例方法
实例方法属于类的对象,需先创建对象再调用:
ClassName obj = new ClassName();
obj.methodName(parameters);
示例:
public class Calculator {
public int add(int a, int b) {
return a + b;
}
}
// 调用
Calculator calc = new Calculator();
int result = calc.add(5, 3);
调用静态方法
静态方法属于类本身,无需实例化,直接通过类名调用:
ClassName.staticMethodName(parameters);
示例:
public class MathUtils {
public static int multiply(int a, int b) {
return a * b;
}
}
// 调用
int product = MathUtils.multiply(4, 2);
方法参数传递
Java支持值传递(基本类型)和引用传递(对象类型):
- 基本类型:传递值的副本,原值不受影响。
- 对象类型:传递对象引用,方法内修改会影响原对象。
示例:
public void updateValue(int num) {
num = 10; // 不影响外部变量
}
public void updateArray(int[] arr) {
arr[0] = 100; // 修改会影响外部数组
}
方法重载
同一类中允许同名方法,但参数列表必须不同(类型、数量或顺序):
public class Printer {
public void print(String text) { /*...*/ }
public void print(int number) { /*...*/ }
public void print(String text, int times) { /*...*/ }
}
递归调用
方法直接或间接调用自身,需设置终止条件避免无限递归:
public int factorial(int n) {
if (n == 1) return 1;
return n * factorial(n - 1);
}
注意事项:
- 实例方法需确保对象非
null,否则抛出NullPointerException。 - 静态方法不能直接访问实例成员。
- 递归深度过大可能导致栈溢出(
StackOverflowError)。







