若继承了Thread类又实现了Runnable接口,那么重写的run方法是谁的呢?
因为Runnable接口不能给线程对象起名字,所以继承了Thread,才会出现这种情况。
public class wenwen {
public static void main(String[] args)
{
Test t = new Test("t线程");
Thread tt=new Thread(t);
t.start();
tt.start();
}
}
class Test extends Thread implements Runnable
{ Test(String name)
{
super(name);
}
public void run()
{
System.out.println("执行谁的run");
System.out.println(currentThread().getName());
}
}
运行结果如下:
执行谁的run
t线程
执行谁的run
Thread-0
两种创建线程的方式都执行,run方法到底属于谁的?
|