Java通过继承thread类与实现Runnable接口实现多线程的区别
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了Java通过继承thread类与实现Runnable接口实现多线程的区别,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2041字,纯文字阅读大概需要3分钟。
内容图文
Java中线程的创建有两种方式:
1. 通过继承Thread类,重写Thread的run()方法,将线程运行的逻辑放在其中
2. 通过实现Runnable接口,实例化Thread类
一、通过继承Thread类实现多线程
class MyThread extends Thread{ String name = null; int ticket = 0; public MyThread(String name){ this.name = name; } public synchronized void run(){ for (int i = 0; i < 5; i++) { System.out.println(Thread.currentThread().getName()+this.name+" ticket:"+ticket++); try { Thread.sleep(100); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } }
通过如下方式运行:
1 public static void main(String[] args) { 2 3 MyThread mThread1 = new MyThread("线程一"); 4 MyThread mThread2 = new MyThread("线程二"); 5 MyThread mThread3 = new MyThread("线程三"); 6 mThread1.start(); 7 mThread2.start(); 8 mThread3.start(); 9 }
运行结果如下:
1 Thread-1线程二 ticket:0 2 Thread-0线程一 ticket:0 3 Thread-2线程三 ticket:0 4 Thread-1线程二 ticket:1 5 Thread-0线程一 ticket:1 6 Thread-2线程三 ticket:1 7 Thread-1线程二 ticket:2 8 Thread-2线程三 ticket:2 9 Thread-0线程一 ticket:2 10 Thread-1线程二 ticket:3 11 Thread-2线程三 ticket:3 12 Thread-0线程一 ticket:3 13 Thread-1线程二 ticket:4 14 Thread-2线程三 ticket:4 15 Thread-0线程一 ticket:4
二、通过继承Runnable接口实现多线程
多线程类:
1 class RunThread implements Runnable{ 2 3int Counter = 0; 4 @Override 5publicsynchronizedvoid run() { 6for(int i=0;i<5;i++){ 7 System.out.println(Thread.currentThread().getName()+"count:"+Counter++); 8try { 9 Thread.sleep(100); 10 } catch (InterruptedException e) { 11// TODO Auto-generated catch block12 e.printStackTrace(); 13 } 14 } 15 } 16 }
实现方式:
1 public static void main(String[] args) { 2 3 RunThread rThread = new RunThread(); 4 Thread t1 = new Thread(rThread,"线程一"); 5 Thread t2 = new Thread(rThread,"线程二"); 6 Thread t3 = new Thread(rThread,"线程三"); 7 t1.start(); 8 t2.start(); 9 t3.start(); 10 }
输出结果:
1 线程一count:0 2 线程一count:1 3 线程一count:2 4 线程一count:3 5 线程一count:4 6 线程二count:5 7 线程二count:6 8 线程二count:7 9 线程二count:8 10 线程二count:9 11 线程三count:10 12 线程三count:11 13 线程三count:12 14 线程三count:13 15 线程三count:14
原文:http://www.cnblogs.com/centor/p/5738550.html
内容总结
以上是互联网集市为您收集整理的Java通过继承thread类与实现Runnable接口实现多线程的区别全部内容,希望文章能够帮你解决Java通过继承thread类与实现Runnable接口实现多线程的区别所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。