package cn.itcast_01;
/*
* 某電影院目前正在上映賀歲大片,共有100章票,而它有三個售票視窗,請設計一個程式模擬該電影院售票
*
* 繼承Thread類來實現
*
*/
public class Thread類實現買電影案例 {
public static void main(String[] args) {
//建立三個執行緒物件
MyThread my1 = new MyThread();
MyThread my2 = new MyThread();
MyThread my3 = new MyThread();
//給執行緒起名字
my1.setName("視窗1");
my2.setName("視窗2");
my3.setName("視窗3");
//啟動執行緒
my1.start();
my2.start();
my3.start();
}
}
package cn.itcast_01;
public class MyThread extends Thread{
//定義100章票
//private int ticket = 100;
//為了讓多個執行緒共用著100章票,我們其實應該用靜態修飾
private static int ticket = 100;
public void run() {
//定義100章票
//每個執行緒進來都會走這裡,這樣的話,每個執行緒物件相當於買的是自己的那100章票,這不合理
// int ticket = 100;
//是為了摸擬一值有票
while(true)
if(ticket>0) {
System.out.println(getName() + "正在出售"+(ticket--)+"張票");
}
}
}