线程类的构造方法、静态块是被哪个线程调用的?

 

这是一个非常刁钻和狡猾的问题。请记住:线程类的构造方法、静态块是被 new

这个线程类所在的线程所调用的,而 run 方法里面的代码才是被线程自身所调用 

的。

如果说上面的说法让你感到困惑,那么我举个例子,假设 Thread2 中 new 了 

Thread1,main 函数中 new 了 Thread2,那么:

1、Thread2 的构造方法、静态块是 main 线程调用的,Thread2 的 run()方法是 

Thread2 自己调用的 

2、Thread1 的构造方法、静态块是 Thread2 调用的,Thread1 的 run()方法是 

Thread1 自己调用的 

posted @ 2020-07-07 15:36  咔啡  阅读(437)  评论(0)    收藏  举报