Java多线程中Runnable和Thread的区别
2017-11-03 16:57
281 查看
Thread
package org.thread.demo;
class MyThread extends Thread{
private String name;
public MyThread(String name) {
super();
this.name = name;
}
public void run(){
for(int i=0;i<10;i++){
System.out.println("线程开始:"+this.name+",i="+i);
}
}
}
package org.thread.demo;
public class ThreadDemo01 {
public static void main(String[] args) {
MyThread mt1=new MyThread("线程a");
MyThread mt2=new MyThread("线程b");
mt1.run();
mt2.run();
}
}
Runnable
package org.demo.runnable;
class MyThread implements Runnable{
private int ticket=10;
public void run(){
for(int i=0;i<20;i++){
if(this.ticket>0){
System.out.println("卖票:ticket"+this.ticket--);
}
}
}
}
package org.demo.runnable;
public class RunnableTicket {
public static void main(String[] args) {
MyThread mt=new MyThread();
new Thread(mt).start();//同一个mt,但是在Thread中就不可以,如果用同一
new Thread(mt).start();//个实例化对象mt,就会出现异常
new Thread(mt).start();
}
};
package org.thread.demo;
class MyThread extends Thread{
private String name;
public MyThread(String name) {
super();
this.name = name;
}
public void run(){
for(int i=0;i<10;i++){
System.out.println("线程开始:"+this.name+",i="+i);
}
}
}
package org.thread.demo;
public class ThreadDemo01 {
public static void main(String[] args) {
MyThread mt1=new MyThread("线程a");
MyThread mt2=new MyThread("线程b");
mt1.run();
mt2.run();
}
}
Runnable
package org.demo.runnable;
class MyThread implements Runnable{
private int ticket=10;
public void run(){
for(int i=0;i<20;i++){
if(this.ticket>0){
System.out.println("卖票:ticket"+this.ticket--);
}
}
}
}
package org.demo.runnable;
public class RunnableTicket {
public static void main(String[] args) {
MyThread mt=new MyThread();
new Thread(mt).start();//同一个mt,但是在Thread中就不可以,如果用同一
new Thread(mt).start();//个实例化对象mt,就会出现异常
new Thread(mt).start();
}
};
相关文章推荐
- Java中 Thread和Runnable实现多线程的区别和联系
- Java多线程编程之Thread和Runnable的区别
- 【Java并发编程】之六:Runnable和Thread实现多线程的区别(含代码)
- Java 多线程实现接口Runnable和继承Thread区别
- java 多线程 Thread与Runnable的区别
- 【Java并发编程】之六:Runnable和Thread实现多线程的区别(含代码)
- 【Java并发编程】:Runnable和Thread实现多线程的区别
- Java基础知识强化之多线程笔记05:Java中继承thread类 与 实现Runnable接口的区别
- java 多线程 Thread和Runnable的区别
- Java中两种多线程实现方法:Thread类和Runnable接口的联系与区别
- 【Java并发编程】之六:Runnable和Thread实现多线程的区别(含代码)
- Java 继承Thread和实现Runnable实现多线程的区别
- java多线程实现(thread和runnable接口两种方式以及其区别)
- Java 多线程实现接口Runnable和继承Thread区别 (2
- [原]Java多线程编程学习笔记之五:Runnable和Thread实现多线程的区别(含代码)
- 多线程——Java中继承Thread类与实现Runnable接口的区别
- [原]Java多线程编程学习笔记之五:Runnable和Thread实现多线程的区别(含代码)
- Java多线程(四) Thread和Runnable之区别(售票系统)
- 【Java并发编程】之六:Runnable和Thread实现多线程的区别(含代码)
- 慕课网--细说java 多线程 thread与runnable的区别