java 如何调用函数
调用静态方法
静态方法属于类而非对象,可以直接通过类名调用。
ClassName.methodName(arguments);
例如调用 Math 类的 max 方法:
int result = Math.max(10, 20);
调用实例方法
实例方法需通过对象调用,需先创建类的实例。
ClassName obj = new ClassName();
obj.methodName(arguments);
例如调用 String 对象的 length 方法:
String str = "Hello";
int len = str.length();
调用构造函数
构造函数用于创建对象,通过 new 关键字调用。
ClassName obj = new ClassName(arguments);
例如调用 ArrayList 的构造函数:
ArrayList<String> list = new ArrayList<>();
通过反射调用方法
通过反射机制动态调用方法,适用于运行时确定方法名的情况。
Class<?> clazz = Class.forName("ClassName");
Method method = clazz.getMethod("methodName", parameterTypes);
Object result = method.invoke(obj, arguments);
示例调用 String 的 substring 方法:
Method substringMethod = String.class.getMethod("substring", int.class, int.class);
String result = (String) substringMethod.invoke("HelloWorld", 2, 5); // 输出 "llo"
Lambda 表达式调用函数式接口
适用于函数式接口(如 Runnable、Consumer)的简化调用。
FunctionalInterface obj = (args) -> { /* 实现逻辑 */ };
obj.methodName(arguments);
例如调用 Runnable 的 run 方法:
Runnable task = () -> System.out.println("Running");
task.run();
方法引用调用
通过方法引用简化 Lambda 表达式,直接指向已有方法。
FunctionalInterface obj = ClassName::methodName;
obj.methodName(arguments);
例如调用 System.out 的 println 方法:
Consumer<String> printer = System.out::println;
printer.accept("Hello");






