Java 多线程实现方式二:实现 Runnable 接口

由于java是单继承,很多时候为了实现多线程 通过继承 Thread 类后,就不能再继承其他类了。为了方便可以通过实现 Runnable 接口来实现,和Tread 类似需要重写run 方法。

下面通过模拟12306 黄牛抢票来简单应用:

public class Web12306 implements Runnable{
//票数
private int ticketNums = 99; @Override
public void run() {
while(true) {
if(ticketNums<0) {
break;
}
try {
Thread.sleep(200);
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println(Thread.currentThread().getName()+"-->"+ticketNums--);
}
}
public static void main(String[] args) {
//一份资源
Web12306 web =new Web12306();
System.out.println(Thread.currentThread().getName());
//多个代理
new Thread(web,"黄牛甲").start();
new Thread(web,"码农").start();
new Thread(web,"黄牛乙").start();;
}
}
上一篇:Java多线程-run方法与start方法的区别


下一篇:jdk1.8源码Thread与Runnable区别