一个小的线程问题
时间:2008-05-14 05:46:07
来源:论坛整理 作者: 编辑:chinaitzhe
例如:class TestThread extends Thread{}
Thread tt = new TestThread();//这样是可以的
class TestThread implements Runnable{}
Thread tt = new TestThread();//这样就不可以了?
网友回复:实现了Runnable之后就没有start()方法了吗?
网友回复:继续接口必须实现接口的全部方法
网友回复:Runnable接口内部不就是一个run()方法吗?
在代码中我实现了(没写出来),这不是问题所在把;
网友回复:同样有start方法啊。假如一个类已经是其他类的子类了,这时就必须用Runnable来实现了。如:
class A implements Runnable{
}
用的时候就需要先创建A的应用,然后在用thread创建应用:
A a = new A();
Thread b = new Thread(a);
然后用b.start();就可以用线程了
我只是写出我知道的,可能会有不得当处,望高手指正,谢谢!
网友回复:Runnable接口中没有start()方法的;
似乎楼上说的还不是问题所在呢;
网友回复:子类可以指向父类的引用,而class TestThread implements Runnable{}
Thread tt = new TestThread();
TestThread和Thread 没有继续关系
网友回复:子类可以指向父类的引用,而class TestThread implements Runnable{}
Thread tt = new TestThread();
TestThread和Thread 没有继续关系
网友回复:class TestThread implements Runnable {}
TestThread tt = new TestThread();
new Thread(tt).start();
网友回复:自己好好看看API帮助文档去吧
网友回复:class TestThread implements Runnable{}
TestThread tt = new TestThread();
new Thread(tt).start();
网友回复:创建线程有两个形式
1'实现Runnable接口
2.定义Thread的子类,然后创建该类对象
class TestThread extends Thread{}
Thread tt = new TestThread();//这样是可以的
========================
正好符合 形式 2
------------------------------------------------------
class TestThread implements Runnable{}
Thread tt = new TestThread();//这样就不可以了?
=====================
已经创建线程了,那么他的对象的实例化应该是:
class TestThread implements Runnable{}
TestThread tt = new TestThread();//这样就不可以了?
网友回复:请仔细看:
class TestThread implements Runnable{
public void run() {
}
}
假如是实现了Runnable接口的话是这样new一个线程的: Thead thread = new Thread(new TestThread());
也就是说TestThread的一个对象是Thread类的一个参数,Thread(new TestThread())是Thread类重载的一个构造方法,
它的参数类型便是实现了Runnable接口的一个类对象, 启动这个线程用thread.start(),所以说还是调用的Thread类的start()方法,实现了Runnable接口的类没有start()方法,只有run方法,明白了吧?
关键字:一个,线程,问题,
下一篇:下面没有链接了











文章评论
共有 0 位网友发表了评论 此处只显示部分留言 点击查看完整评论页面