日期:2014-05-20  浏览次数:20740 次

请教:在Java中使用多线程既继承Thread又实现Runnable会出错吗?
Java code

根据下面的代码,选择可能的结果:
(1)class Demo extends Thread implements Runnable{
(2)   public void run(){
        System.out.println("k");
     }
     public static void main(String []args) {
         Thread t=new Thread(new Demo());
(3)     t.start();
     }            
}
a.代码(1)出错.
b. 代码(2)出错
c. 代码(3)出错
d.正常输出”k”


是选a了还是选b了??迷糊了。

------解决方案--------------------
Thread和Runnable是面向对象项目的关系,
其中Thread和线程仅仅相关,Runnable和线程其实毫无关系。

估计选d
------解决方案--------------------
经过实验,正常输出“k”。

Java code
public void run() {
    System.out.println("k");
}

------解决方案--------------------
继承Thread和接口runnable,重写和实现了run()方法,结果是:正常输出k
------解决方案--------------------
没什么,jdk中很多类都是这样
比如ArrayList extends AbstractList implements List
而 AbstractList implements List