Java 线程中创建线程的2中方法的具体区别

今天上网看相关资料发现有这么个说法:说继承Thread类的这种方法不能实现资源共享,举的例子就是说三个窗口卖100张票的但是我发现不是那么回事啊publicstaticv... 今天上网看相关资料发现有这么个说法:说继承Thread类的这种方法不能实现资源共享,举的例子就是说三个窗口卖100张票的但是我发现不是那么回事啊 public static void main(String[] args) { // TODO Auto-generated method stub MutliThread m=new MutliThread(); Thread t1=new Thread(m,"A"); Thread t2=new Thread(m,"B"); Thread t3=new Thread(m,"C"); t1.start(); t2.start(); t3.start(); }}class MutliThread extends Thread{ private int ticket=100;//每个线程都拥有100张票 public void run(){ while(ticket>0){ System.out.println(Thread.currentThread().getName()+"卖出一张,剩余" + (--ticket) +"张" ); } }}MutliThread这个类不论是继承Thread还是实现Runnable接口都是一样的效果吧?请高明的大神讲讲具体的情况吧或者推荐一个详细讲解线程的网址,单线程或者多线程的都行 展开
 我来答
千锋教育
2016-04-15 · 做真实的自己 用良心做教育
千锋教育
千锋教育专注HTML5大前端、JavaEE、Python、人工智能、UI&UE、云计算、全栈软件测试、大数据、物联网+嵌入式、Unity游戏开发、网络安全、互联网营销、Go语言等培训教育。
向TA提问
展开全部
第一种方式:使用Runnable接口创建线程

第二种方式:直接继承Thread类创建对象

使用Runnable接口创建线程

1.可以将CPU,代码和数据分开,形成清晰的模型

2.线程体run()方法所在的类可以从其它类中继承一些有用的属性和方法

3.有利于保持程序的设计风格一致

直接继承Thread类创建对象

1.Thread子类无法再从其它类继承(java语言单继承)。

2.编写简单,run()方法的当前对象就是线程对象,可直接操作。

在实际应用中,几乎都采取第一种方式
分享
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式