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

 

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

前言

做Android开发,可能经常要用到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中

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程宝库

维基百科JavaBean的定义:JavaBeans是Java中一种特殊的类,可以将多个对象封装到一个对象(bean)中。特点是可序列化,提供无参构造器,提供getter方法和setter方法访问对象的属性。名称中的“Bean”是用于Java的可重用软件组件的惯用叫法。要成为JavaBean类,则必需遵循关于命名、构造器、方法的特定规范。有了这些规范,才能有可以使用、复用、替代和连接JavaBeans的工具。