我有一个类,它开始执行“parametro”方法,但它不运行其他任何东西,我也不知道为什么不。。
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.lang.ProcessBuilder.Redirect;
import java.io.*;
import java.nio.charset.*;
public class Proceso extends Thread{
String variable;
@Override
public void run(){
System.out.println(variable+" en run");
System.out.println("--------------------");
/*
more lines of code
*/
}
public void parametro(String comando){
this.variable = comando;
System.out.println(variable+" en parametro");
}
}
所以它只打印'parametro'方法中的命令,然后结束。。。
注意:对所有人:我很抱歉我的信息不足,所以缺少的信息是来自主类的信息,我这样称呼它:
// some code before
String fichero = args[0];
BufferedReader br = null;
String linea = "";
Proceso hilo = new Proceso();
try {
br = new BufferedReader(new FileReader(fichero));
while((linea = br.readLine()) != null) {
hilo.parametro(linea);
}
// some code after
2条答案
按热度按时间wi3ka0sx1#
为了让run方法做任何事情,您必须通过初始化类的一个对象并调用
start()
方法。你没有提供初始化类的任何信息,所以我无法回答为什么parametro()
方法甚至被调用。643ylb082#
可能是因为没有初始化线程吗?尝试在新线程中 Package run方法。