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

 更新时间:2021年09月10日 14:38:41   作者:林新发  
这篇文章主要介绍了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中

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Redisson之分布式锁原理全面分析

    Redisson之分布式锁原理全面分析

    这篇文章主要介绍了Redisson分布式锁原理,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-03-03
  • Spring Boot获取微信用户信息的超简单方法

    Spring Boot获取微信用户信息的超简单方法

    这篇文章主要给大家介绍了关于Spring Boot获取微信用户信息的超简单方法,文中通过示例代码介绍的非常详细,对大家学习或者使用Spring Boot具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-09-09
  • IDEA基于支付宝小程序搭建springboot项目的详细步骤

    IDEA基于支付宝小程序搭建springboot项目的详细步骤

    这篇文章主要介绍了IDEA基于支付宝小程序搭建springboot项目的详细步骤,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2019-04-04
  • MySQL数据库之Purge死锁问题解析

    MySQL数据库之Purge死锁问题解析

    这篇文章主要介绍了MySQL数据库之Purge死锁问题解析的相关资料,需要的朋友可以参考下
    2017-11-11
  • 详解Springboot2.3集成Spring security 框架(原生集成)

    详解Springboot2.3集成Spring security 框架(原生集成)

    这篇文章主要介绍了详解Springboot2.3集成Spring security 框架(原生集成),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-08-08
  • springboot查询全部部门流程分析

    springboot查询全部部门流程分析

    本文分析了在SpringBoot框架中前端如何请求DeptController的list()方法,并通过DeptService到DeptMapper接口查询数据库中的全部部门信息的流程,整个过程涉及前端到后端数据的获取和返回,是SpringBoot应用中常见的数据处理模式
    2024-10-10
  • Java如何把int类型转换成byte

    Java如何把int类型转换成byte

    这篇文章主要介绍了Java如何把int类型转换成byte,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-02-02
  • Java正则表达式的语法及示例解析

    Java正则表达式的语法及示例解析

    这篇文章主要介绍了Java正则表达式的语法及示例解析,需要的朋友可以参考下
    2017-07-07
  • 关于application.yml基础配置以及读取方式

    关于application.yml基础配置以及读取方式

    这篇文章主要介绍了关于application.yml基础配置以及读取方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-07-07
  • Ubuntu安装JDK与IntelliJ IDEA的详细过程

    Ubuntu安装JDK与IntelliJ IDEA的详细过程

    APT是Linux系统上的包管理工具,能自动解决软件包依赖关系并从远程存储库中获取安装软件包,这篇文章主要介绍了Ubuntu安装JDK与IntelliJ IDEA的过程,需要的朋友可以参考下
    2023-08-08

最新评论