1.写一个卖票的程序,
1.写一个类,该类实现了Runnable接口.有一
个私有类型的int作为参数tickets.
票的总数为100,完成run方法,输出结果的格式如下:
当前窗口为:窗口a,剩余票数为19,其中窗口a为线程的名字
2.开启四个卖票窗口(开始四个线程),同时执行卖票的程序
*/
public class Test06 {
public static void main(String[] args) {
//创建Runnable接口类对象
MyTickets t = new MyTickets();
//创建Thread类,将Runnable类调用Thread类中的.start()方法,并将线程赋予名字
new Thread(t,"窗口a").start();
new Thread(t,"窗口b").start();
new Thread(t,"窗口c").start();
new Thread(t,"窗口d").start();
}
}
//创建Runnable接口的类
class MyTickets implements Runnable {
//定义票的数量
private int tickets = 100;
@Override
//重写run方法
public void run() {
while (true) {
synchronized (MyTickets.class) {
//判断票数数是否为0
if(tickets < 0)
break;
try {
Thread.sleep(10);
} catch (InterruptedException e) {
e.printStackTrace();
}
//当前窗口为:窗口a,剩余票数为19,其中窗口a为线程的名字
System.out.println( "当前窗口为:" + Thread.currentThread().getName() + " 剩余票数为:" + tickets--);
}
}
}
} |
|