class myThread extends Thread{
//
public void run(){
System.out.println("************线程一**********");
}
}
public class ThreadText{
public static void main(String[] args) {
myThread p = new myThread();
//通过对象调用start():①启动当前线程②调用当前线程的run()
p.start();
//问题一:不能直接调用run()方法启动线程。
// p.run();
//问题二:不可以让已经start的线程去执行,会报IllegalThreadStateException错误
// p.start();
//解决办法:创建一个新线程的对象调用start
System.out.println("hello");
System.out.println("**********main**************");
}
}
问题一:首先调用线程要用start()方法调用。若使用run()方法调用,则此代码都会在main线程中进行。
下面是用start()调用
下面是run()调用
可以看出使用run()仅仅只是方法调用没有线程的事。