e9_4.java
来自「java 初学者学习实例」· Java 代码 · 共 69 行
JAVA
69 行
//请注意,我怕用中文的变量名字无法识别,
//所以书上的中文变量分别用下面的代替:
//会计:accountant
//出纳:cashier
//存取:inout
/////////////////////////////////////////////////////////////////////////////////////////
import java.applet.*;
import java.awt.*;
import java.awt.event.*;
public class E9_4 extends Applet implements Runnable
{
int money=100; TextArea text1,text2;
Thread accountant , cashier;
public void init()
{
accountant=new Thread(this);
cashier=new Thread(this);
text1=new TextArea(20,15);
text2=new TextArea(20,15);
add(text1); add(text2);
}
public void start()
{
accountant.start();
cashier.start();
}
public synchronized void inout(int number)
{
if(Thread.currentThread()==accountant)
{
for(int i=0;i<3;i++)
{
money=money+number;
try{ accountant.sleep(1000); }
catch(InterruptedException e) {}
text1.append("\n"+money);
}
}
else if(Thread.currentThread()==cashier)
{
for(int i=0;i<2;i++)
{
money=money-number;
try{ cashier.sleep(1000); }
catch(InterruptedException e) {}
text2.append("\n"+money);
}
}
}
public void run()
{
if(Thread.currentThread()==accountant)
{
for(int i=0;i<3;i++)
{
inout(30);
}
}
else if(Thread.currentThread()==cashier)
{
for(int i=0;i<3;i++)
{
inout(15);
}
}
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?