线程可以用继承Thread类或者实现Runnable接口来实现.
Thread.sleep()是Thread类的方法,只对当前线程起作用,睡眠一段时间.
如果线程是通过实现Runnable接口来实现的,则不是Thread类,不能直接使用Thread.sleep()
必须使用Thread.currentThread()来得到当前线程的引用才可以调用sleep(),
Thread.sleep()是Thread类的方法,只对当前线程起作用,睡眠一段时间.
如果线程是通过实现Runnable接口来实现的,则不是Thread类,不能直接使用Thread.sleep()
必须使用Thread.currentThread()来得到当前线程的引用才可以调用sleep(),
所以要用Thread.currentThread().sleep()来睡眠...
区别当然是有了。第一种方式是只调用sleep静态方法;第二种是获取对象后再调用sleep静态方法。显然第二种方式效率要低一些,因为多了一次函数调用,而且通过对象调用静态方法也不太符合“静态”的定义(静态成员最好通过类名直接访问),但功能上是一致的。当需要调用非静态方法时使用第二种方式,否则直接使用第一种方式。
http://bbs.csdn.net/topics/370163905?page=1