我在java中遇到线程问题。 这是我实现线程的类:
public class SensorAddClient extends Thread implements Runnable {
String[] args = new String[3];
@Override
public void run(){
try {
SensorClient.main(args);//this is the main function i wanna get executed on my args
} catch (IOException e) {
e.printStackTrace();
} catch (JSONException e) {
e.printStackTrace();
}}
然后当我需要激活线程时,我使用接下来的两行来调用它:
SensorAddClient cl = new SensorAddClient();
cl.start();
我必须启动一个线程,其运行只需要调用一个使用args执行的特定类,所以我调用类的main函数,有没有办法让我调用的类的主函数得到用我想要的args执行? 那么我可以把元素放在那个: String [] args = new String [3];在执行线程运行之前?那可能吗 ? 任何帮助将不胜感激,谢谢你提前:))
答案 0 :(得分:1)
创建一个构造函数并在那里添加值:
public class SensorAddClient extends Thread implements Runnable {
String[] args = new String[3];
public SensorAddClient(String[] args) {
this.args = args;
}
@Override
public void run(){
try {
SensorClient.main(args);//this is the main function i wanna get executed on my args
} catch (IOException e) {
e.printStackTrace();
} catch (JSONException e) {
e.printStackTrace();
}}