?? example19_10.java
字號:
import java.applet.*;import java.awt.*;import java.awt.event.*;class 售票員{int 五元錢的個數=2,十元錢的個數=0,二十元錢的個數=0; String s=null; public synchronized void 售票規則(int money) { if(money==5) //如果使用該方法的線程傳遞的參數是5,就不用等待。 { 五元錢的個數=五元錢的個數+1; s= "給您入場卷"+" 您的錢正好"; Example19_10.text.append("\n"+s); } else if(money==20) { while(五元錢的個數<3) { try {wait();} //如果使用該方法的線程傳遞的參數是20須等待。 catch(InterruptedException e){} } 五元錢的個數=五元錢的個數-3; 二十元錢的個數=二十元錢的個數+1; s="給您入場卷"+" 您給我20,找您15元"; Example19_10.text.append("\n"+s); } notifyAll(); } }public class tong extends Applet implements Runnable{ 售票員 王小姐; Thread 張平,李明; //創建兩個線程。 static TextArea text; public void init() {張平=new Thread(this);李明=new Thread(this); text=new TextArea(10,30);add(text); 王小姐=new 售票員(); } public void start() {張平.start();李明.start(); } public void run() { if(Thread.currentThread()==張平) {王小姐.售票規則(20); } else if(Thread.currentThread()==李明) {王小姐.售票規則(5); } } }
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -