本帖最后由 黑马--张帅 于 2012-9-1 13:21 编辑
class Demo1 implements Runnable
{
public void run()
{
System.out.println("Hello World!");
}
}
class Demo
{
public static void main(String[] args)
{
Demo1 d = new Demo1();
Thread t = new Thread();//当没有把对象d作为参数传给线程t时,线程t调用的是Runnable自己的run方法。
Thread t = new Thread(d);//当没有把对象d作为参数传给线程t时,线程t调用的是Demo1的run方法。
t.start();
}
}
问题是:为什么当把对象d作为参数传给线程t时,线程t调用的就是Demo1的run方法?具体的调用过程是怎样的?
|