java 如何调用方法
调用方法的基本语法
在Java中,调用方法需要明确方法所属的对象或类(静态方法),并遵循对象.方法名(参数)或类名.方法名(参数)的格式。实例方法需通过对象调用,静态方法可通过类名直接调用。
// 实例方法调用
ClassName obj = new ClassName();
obj.methodName(arg1, arg2);
// 静态方法调用
ClassName.staticMethodName(arg1, arg2);
实例方法的调用
实例方法属于类的对象,需先创建对象实例才能调用。例如:
public class Calculator {
public int add(int a, int b) {
return a + b;
}
}
// 调用步骤
Calculator calc = new Calculator();
int result = calc.add(5, 3); // 返回8
静态方法的调用
静态方法属于类本身,无需实例化即可调用。例如:
public class MathUtils {
public static int multiply(int a, int b) {
return a * b;
}
}
// 直接通过类名调用
int product = MathUtils.multiply(4, 5); // 返回20
方法重载与调用
Java支持方法重载(同名不同参数),调用时根据参数类型自动匹配:
public class Printer {
public void print(String text) {
System.out.println(text);
}
public void print(int number) {
System.out.println(number);
}
}
// 调用示例
Printer printer = new Printer();
printer.print("Hello"); // 调用String版本
printer.print(100); // 调用int版本
可变参数方法的调用
使用...语法声明可变参数,调用时可传入任意数量同类型参数:
public class Sum {
public static int sumNumbers(int... numbers) {
int sum = 0;
for (int num : numbers) {
sum += num;
}
return sum;
}
}
// 调用示例
int total = Sum.sumNumbers(1, 2, 3); // 返回6
int empty = Sum.sumNumbers(); // 返回0
递归方法调用
方法内部调用自身称为递归,需注意终止条件:
public class Factorial {
public static int factorial(int n) {
if (n <= 1) return 1;
return n * factorial(n - 1);
}
}
// 调用示例
int result = Factorial.factorial(5); // 返回120
链式方法调用
通过返回对象本身(return this)实现链式调用:
public class StringBuilderDemo {
private StringBuilder sb = new StringBuilder();
public StringBuilderDemo append(String text) {
sb.append(text);
return this;
}
}
// 链式调用示例
StringBuilderDemo demo = new StringBuilderDemo();
demo.append("Hello").append(" ").append("World");
方法引用(Java 8+)
Lambda表达式的简化写法,通过::符号引用方法:
List<String> names = Arrays.asList("Alice", "Bob");
names.forEach(System.out::println); // 等效于 x -> System.out.println(x)






