JAVA两种创建线程的方法有什么不同?

第一种线程创建的方式有一个弊端:线程与线程要执行的任务定义在了一起,重用性有限。更多时候应该将线程与线程要执行的任务分离开请教高手:第一种方式怎么说明是线程与任务定义在了... 第一种线程创建的方式有一个弊端:
线程与线程要执行的任务定义在了一起,重用性有限。
更多时候应该将线程与线程要执行的任务分离开
请教高手:第一种方式怎么说明是线程与任务定义在了一起,怎样说明了重用性有限
第二种方式怎样看出来的没有定义在一起 ,重用性没限?
理解不了,着急上火,谢谢帮忙。
public class ThreadDemo {
public static void main(String[] args) {

Thread p1 = new Person1();
Thread p2 = new Person2();

p1.start();
p2.start();

}
}
//以下是第一种创建线程的方式

class Person1 extends Thread{

public void run(){
for(int i=0;i<1000;i++){
System.out.println("我是线程1");
}
}

}

class Person2 extends Thread{
public void run(){
for(int i=0;i<1000;i++){
System.out.println("我是线程2");
}
}
}
---------------------------------------------------------------------------------------------------------------------------------
public class ThreadDemo2 {
public static void main(String[] args) {

Runnable runnable1 = new Person3();
Runnable runnable2 = new Person4();

Thread t1 = new Thread(runnable1);
Thread t2 = new Thread(runnable2);

t1.start();
t2.start();
}
}
//以下是第二种创建线程的方式

class Person3 implements Runnable{

public void run() {
for(int i=0;i<1000;i++){
System.out.println("我是线程3?");
}

}
}

class Person4implements Runnable{
public void run() {
for(int i =0;i<1000;i++){
System.out.println("我是线程4");
}
}
}
展开
 我来答
科技兰兰加油
2014-02-04 · TA获得超过159个赞
知道答主
回答量:161
采纳率:80%
帮助的人:9.5万
展开全部
你可以实现很多借口 但是一个类只能继承一个父类 你用了继承了 那不就不能继承别的了 你实现接口 没什么影响 可以实现很多借口
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
pw2007pw
2014-02-04 · TA获得超过532个赞
知道小有建树答主
回答量:316
采纳率:66%
帮助的人:112万
展开全部
没有区别 但是用接口有点好处 你要是用继承的方式实现线程就不不能再去继承别的类 java中没有多重继承
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
流星不死
2014-02-04 · TA获得超过1662个赞
知道小有建树答主
回答量:1621
采纳率:0%
帮助的人:1325万
展开全部
extends的话 是2个对象 要同步的话比接口实现麻烦一点点
implements 是同一个对象 要同步很容易

都差不多 随意的
追问
线程不是为了异步执行任务吗?
追答
同步的意思是 执行完某一个流程

然后再跳到另外一个线程

如果不同步

那么我执行完一半 就可能跳到另一个线程

这样很多程序就会得不到预想的结果
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式