是的,我们可以 重写Java中Thread 类的start()方法。我们必须调用super.start()方法创建一个新线程,并且需要在该新创建的线程中调用run() 方法。如果我们直接从start()方法内部调用run() 方法,则它可以作为常规方法在实际线程中执行,而不是在新线程中执行。
public class ThreadTest {
public static void main(String[] args) {
MyThread t = new MyThread();
t.start();
}
}
class MyThread extends Thread {
@Override
public void start() { // overriding the start() method
System.out.println("Overriding a start() method");
super.start();
}
@Override
public void run() {
System.out.println("run() method ");
}
}输出结果
Overriding a start() method run() method