谢谢
解决方案 »
- replace问题
- SWT的dnd.DragSource及DropTarget问题
- 【新手学习Java之路】
- java开发交流群号8337229
- 问一个简单作业问题!刚学java
- Java初学,问个书上的问题
- jdk问题
- 用jbuilder连sql server,出现DataSet has no unique row identifiers错误
- 那位高手知道这个协议怎么用?
- 金山词霸.net SP1 骗人!!!根本不能在JBuilder企业版里面取词(金山论坛上说的)
- 关于4种初始化概念搞搞清楚(基础问题,不过还是挺重要的)
- 急求助:jxl类使用报java.lang.NoClassDefFoundError
而run()方法,只是Thread类的一个方法,它本身并不能开辟线程。
所以,当你用run()时候,程序只有一个线程,根本没达到你多线程的目的(是错误的)。而你用start()时候,你的程序又开辟了两个线程,所以结果不同
start() :使该线程开始执行;Java 虚拟机调用该线程的 run 方法。
run()是当线程运行时,需要实现的功能。
run 本线程运行方法
都要重写他的run()方法,里面放的是线程里面要实现的功能,就是执行线程的代码。
start()是你在必要的时间开启你的线程。
run():就和直接调用其他java方法一样没有区别,依然是同步的。