向 Java 线程传递参数
在 Java 中,线程是通过实现 Runnable 接口来创建的。默认情况下,Runnable 对象不带任何参数。但是,如果需要向线程传递参数,有两种策略:包装类或匿名类。
包装类
将参数传递给线程的一种方法线程就是使用包装类。这涉及创建一个实现 Runnable 接口并在其构造函数中接受所需参数的类。这是一个例子:
public class ParameterizedRunnable implements Runnable {
private final Object parameter;
public ParameterizedRunnable(Object parameter) {
this.parameter = parameter;
}
public void run() {
// Use the passed parameter here
}
}
然后就可以使用此类来创建线程并向其传递参数:
Runnable runnable = new ParameterizedRunnable(myParameter);
new Thread(runnable).start();
匿名类
匿名类也可用于向线程传递参数。匿名类是同时定义和实例化的类。下面是使用匿名类向线程传递参数的示例:
Thread thread = new Thread(() -> {
// Use the passed parameter here
}, myParameter);
thread.start();
在此示例中,传递给 Thread 构造函数的 lambda 表达式定义了一个实现 Runnable 接口并接收 myParameter 作为其参数的匿名类。
免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3