如何将线程用作对象?我尝试这样做。
对象类别
public class Object implements Runnable{
public String name = "";
public void run(){
//logic code here
}
}
我通过这样做来调用它。
Thread contract1 = new Thread(new Object());
contract1.name = "foo";
contract1.start();
我收到错误
The field Thread.name is not visible
什么是最足智多谋且所需代码量最短的方法?
谢谢。
最佳答案
public class YourRunnable implements Runnable{
private String name;
public YourRunnable(String name) {
this.name = name;
}
public void run() {
//logic code here
}
}
然后
Thread contract1 = new Thread(new YourRunnable("foo"));
contract1.start();
所以使用构造函数。
编辑:但是要做你想做的事,你要做的就是
public class YourRunnable implements Runnable{
public String name;
public void run() {
//logic code here
}
}
然后
YourRunnable yourRunnable = new YourRunnable();
Thread contract1 = new Thread(yourRunnable);
yourRunnable.name = "foo";
contract1.start();
关于java - 使用线程作为对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31301171/