黑马程序员技术交流社区

标题: Thread.start ()与 Thread.run ()有什么不同? [打印本页]

作者: 蒋太原    时间: 2013-3-19 18:28
标题: Thread.start ()与 Thread.run ()有什么不同?
Thread.start ()与 Thread.run ()有什么不同?

作者: 杨博    时间: 2013-3-19 18:39
楼上正解,一个是开启线程,一个是调用方法
作者: 黑马17期-闫东东    时间: 2013-3-19 19:13
start();开启线程,并调用run方法,run方法只是对象调用方法,没有开启多多线程。
作者: Alex shaw    时间: 2013-3-19 19:17
首先,假定楼主所说的Thread是Thread类的一个实例对象,那么Thread.start方法的作用是启动该线程并调用run方法,这样main方法就会有主线程和自己创建的Thread线程
而Thread.run则是直接调用run方法,并未启动线程,这样main方法就只有主线程这一个线程,你可以再run方法中写一条输出语句就可以明确的知道了
作者: 郝强勇    时间: 2013-3-19 19:19
    run方法是将要执行的线程,换句话说,就是把需要跑的线程代码写在这个run方法中,如果你调用run方法,就跟我们调用普通的方法没什么区别,是主线程调用的,当你调用start方法时才真正开启了通过new Thread()建立的新线程,并且在start方法内部也会帮你调用run方法去执行相应的线程代码。
作者: lxww    时间: 2013-3-19 19:27
Thread.start () 是开启线程
而Thread.run () 只是用类名调用方法。希望有帮助。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2