这次的的问题引入的比较深入,如果看了这篇博客,不看下一篇,你会很懵逼。
代码:
![]()
1 package com.day13.math;
2 /**
3 * 类说明 :模拟三个窗口同时售票
4 * @author 作者 : chenyanlong
5 * @version 创建时间:2017年10月29日
6 */
7 public class ThreadTest1 {
8
9 public static void main(String[] args) {
10 //创建三个线程对象
11 SaleTicket saleTicket1=new SaleTicket("窗口1");
12 SaleTicket saleTicket2=new SaleTicket("窗口2");
13 SaleTicket saleTicket3=new SaleTicket("窗口3");
14
15 //开始售票
16 saleTicket1.start();
17 saleTicket2.start();
18 saleTicket3.start();
19 }
20 }
21
22 //售票的窗口
23 class SaleTicket extends Thread{
24
25 int num=50;//票数
26
27 public SaleTicket(String name){
28 super(name);
29 }
30
31
32
33 @Override
34 public void run(){
35 while(true){
36 if(num>0){
37 System.out.println(Thread.currentThread().getName()+"出售了第"+num+"票");
38 num--;
39 }else{
40 System.out.println("票买完了!");
41 break;
42 }
43 }
44 }
45 }
View Code