?? testatm.java
字號:
public class testATM extends Thread{
static int Account =200;
public static void main(String arg[]){
Balance testBalance=new Balance();
operaterATMThread operaterA,operaterB;
operaterA=new operaterATMThread(testBalance,100,"用戶A");
operaterB=new operaterATMThread(testBalance,-50,"用戶B");
System.out.println("兩個線程啟動...");
operaterA.start();
operaterB.start();
try{
operaterA.join();
operaterB.join();
System.out.println("兩個線程結束");
}catch (InterruptedException e){
System.out.println("線程結束出現錯誤.....");
}
System.out.println("銀行最后存款余額是...."+Account);
}
}
class Balance{
int getAccount(){
try{
Thread.sleep(2000);
}catch(InterruptedException e){
System.out.println("取存款余額出現錯誤...");
}
return testATM.Account;
}
void operateMoney(int intMoneyNum,String Name){
int balance;
System.out.println(Name+"將要操作存款余額");
System.out.println(Name+"取出的存款余額數據");
balance =getAccount();
System.out.println(Name+"取出的存款余額是:"+balance);
System.out.println(Name+ "將要更改存款余額....:");
balance+=intMoneyNum;
System.out.println(Name+"更改存款余額...."+intMoneyNum);
System.out.println(Name+"將要向服務器提交新的存款余額數據...");
setAccount(balance);
System.out.println(Name+"新存款余額是..."+testATM.Account);
}
void setAccount(int intMoneyNum){
try{
Thread.sleep(2000);
}catch(InterruptedException e){
System.out.println("提交存款余額出現錯誤...");
}
testATM.Account=intMoneyNum;
}
}
class operaterATMThread extends Thread{
Balance TestBalance;
int MoneyAccount;
String Name;
operaterATMThread(Balance TestBalance,int MoneyAccount,String Name){
this.TestBalance=TestBalance;
this.MoneyAccount=MoneyAccount;
this.Name=Name;
}
public void run(){
TestBalance.operateMoney(MoneyAccount,Name );
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -