如何实现Java Runnable线程传参并让run访问参数

如何实现Java Runnable线程传参并让run访问参数,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

Java Runnable线程传参,让run访问参数

自定义一个接口,继承Runnable,新增一个传参方法

public interface MyRunnable extends Runnable {
   public MyRunnable setParam(String... param);
}

实现这个自定义接口

MyRunnable sendMessage = new MyRunnable() {
    String message;
    @Override
    public MyRunnable setParam(String... param) {
        message = param[0];
        return this;
    }
 
    @Override
    public void run() {
        sendMessage(message);
    }
};

Runnable实现参数传递

大家都知道Runnable()是无法传参数的,但是,有时候,我们提交任务的时候,是需要传递参数的,所以,为了解决这个问题

有以下的方法

这是,一个参数传递的设置接口,里面有一个设置参数的方法

public interface MyRunnable extends Runnable {
    public MyRunnable setParam(String param);
}
public static void main(String[] args) {
        MyRunnable myRunnable = new MyRunnable() {
        // 新建接口,然后定义写实例变量;
            String string ;
            @Override
            public void run() {
                // 实现线程池的传参
                System.out.println(string);
            }
            @Override
            public MyRunnable setParam(String param) {
                string = param;
                return this;
            }
        };
        new Thread(myRunnable.setParam("aaa")).start();
    }

在进行使用时,我们可以在新建MyRunnable的时候,实现run() 和 setParam()方法,将参数设置到String中

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对亿速云的支持。