胡大强 发表于 2012-6-17 16:49
就是说继承之后,如果继承之后调用run,子类中定义了,调用了;那Thread类中的run呢?是被子类覆盖了?或 ...
子类既然复写了run()方法,那么子类调用run()的时候就是被复写后的方法.
下面我来科普一下毕老师的讲课内容:
为什么要覆盖run()方法呢:
Thread类用于描述线程.
该类就定义了一个功能,用于存储线程要运行的代码,那么存储功能的实现就是run()方法.
接下来如果你调用start()方法,那么你就启动了一个线程,而且这个线程所执行的代码就存在run()里,
就是你想要让子类运行的功能.
如果直接调用run()方法,那么就没有开启线程,那么虚拟机执行主函数中run()方法,只是单纯的对象调用.
跟多线程就没有关系了.就是单线程了.
真心的希望楼主能看懂.不懂的话,可以看看毕老师11天-03的视频.
|