Thread类和Runnable中的run()方法有什么不同
在API文档中说  如果该线程是使用独立的 Runnable 运行对象构造的,则调用该 Runnable 对象的 run 方法;否则,该方法不执行任何操作并返回。有点难理解。

解决方案 »

  1.   

    没有什么不同吧!thread 也是 implements Runnable接口的
      

  2.   

    Thread类本身就实现Runnable,所以如果不重写run方法,即new Thread().start,该thread是什么都不做的,因为run什么都不做
    如果使用独立的Runnable对象构造,即new Thread(someRunnable).start,则会调用someRunnable的run方法
      

  3.   


    正解.. Thread也是实现了Runnable接口的.一般建议使用Runnable, 因为接口可以实现多继承.
    不过, 因为Tread是一个实体类, 可以直接创建使用, 有时直接用Thread更方便.
      

  4.   

    有的吧 那么在API文档中  Thread类中的run()方法 有这样说明:如果该线程是使用独立的 Runnable 运行对象构造的,则调用该 Runnable 对象的 run 方法;如果该线程是使用独立的 Runnable 运行对象构造的,则调用该 Runnable 对象的 run 方法;否则,该方法不执行任何操作并返回。
    其中:
        否则,该方法不执行任何操作并返回。
    是什么意思啊
      

  5.   

    呵呵 知道了 谢谢qybao(阿宝)
      

  6.   

    没看到我说的吗,Thread本身的run方法什么都不做,一般子类继承Thread后要重写run方法
      

  7.   

    那先看看Thread 与Runable接口的区别,runable实现数据的共享,而Thread不能、
      

  8.   

    如果自行实现的线程类需要使用到 Thread 中的方法,那就继承 Thread,如果只是启一个线程不需要使用 Thread 中的方法就实现 Runnable 接口就可以了。
      

  9.   

    一切线程都是Thread类,不管你是直接new一个出来,还是搞匿名内部类,还是实现接口
    最终跑起来的永远都是Thread的run方法,Thread类中有一个实例属性叫target
    各位进这个方法看看就知道了
      

  10.   

    这个fdsfdsfds放p也不挑个地方·