热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Java线程传参技巧:如何在Runnable中传递参数?

在Java中,通过匿名类实现`Runnable`时,可以通过将参数声明为`final`来传递参数。这种方法适用于基本数据类型和对象引用。此外,还可以使用Lambda表达式或外部类成员变量来实现更灵活的参数传递,从而提高代码的可读性和维护性。

展开全部

在匿名类中,使用final修饰变量(其实基础类型也是被62616964757a686964616fe4b893e5b19e31333365653330修饰了)@Test

public void test1() {

int app = 12;

final Circle circle = new Circle(123);

String string = "";

new Thread(new Runnable() {

@Override

public void run() {

System.out.println(app);

System.out.println(string);

circle.setRadius(12);

System.out.println(circle);

}

}).start();

}

2. 当单独定义了线程通过传参的方式

1. 通过构造方法传参

2. 通过线程内部的方法传参

class ThreadA implements Runnable {

private Circle circle;

// 方法1

public ThreadA(Circle circle) {

this.circle = circle;

}

// 方法2

public ThreadA() {  }

@Override

public void run() {

// TODO Auto-generated method stub

System.out.println(circle.toString());

}

// 方法2

public void setCircle(Circle circle) {

this.circle = circle;

}

}

3. 修改错误,在上的回调函数中应该是 `Integer... numbers`



推荐阅读
author-avatar
787849993_8c653d
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有