线程类的构造方法、静态块是被哪个线程调用的?
这是一个非常刁钻和狡猾的问题。请记住:线程类的构造方法、静态块是被 new
这个线程类所在的线程所调用的,而 run 方法里面的代码才是被线程自身所调用
的。
如果说上面的说法让你感到困惑,那么我举个例子,假设 Thread2 中 new 了
Thread1,main 函数中 new 了 Thread2,那么:
1、Thread2 的构造方法、静态块是 main 线程调用的,Thread2 的 run()方法是
Thread2 自己调用的
2、Thread1 的构造方法、静态块是 Thread2 调用的,Thread1 的 run()方法是
Thread1 自己调用的
Java Program!