在 Java 中,启动线程时需要使用 Thread 类,并传入一个 Runnable 对象。如果要在启动线程时传递参数,可以使用 Lambda 表达式或者使用具名内部类。以下是两种方法的示例:

  1. 使用 Lambda 表达式:
new Thread(() -> getFanAlert(param1, param2)).start();

在 Lambda 表达式中,可以直接调用 getFanAlert 方法,并传递参数 param1param2

  1. 使用具名内部类:
class MyRunnable implements Runnable {
    private final String param1;
    private final int param2;

    public MyRunnable(String param1, int param2) {
        this.param1 = param1;
        this.param2 = param2;
    }

    @Override
    public void run() {
        getFanAlert(param1, param2);
    }
}

new Thread(new MyRunnable(param1, param2)).start();

在具名内部类 MyRunnable 中,将参数 param1param2 作为成员变量保存,并在 run 方法中调用 getFanAlert 方法,并传递参数。

无论是使用 Lambda 表达式还是具名内部类,都可以在启动线程时传递参数给方法,而不需要使用匿名内部类。

Java 线程启动时如何传递参数:Lambda 表达式和具名内部类

原文地址: http://www.cveoy.top/t/topic/bnf0 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录