**

7-1 ATM机类结构设计(二) (100 分)

**
设计ATM仿真系统,具体要求参见作业说明。 OO作业9-1题目说明.pdf

输入格式:
每一行输入一次业务操作,可以输入多行,最终以字符#终止。具体每种业务操作输入格式如下:
取款功能输入数据格式:

卡号 密码 ATM机编号 金额

(由一个或多个空格分隔)
查询余额功能输入数据格式:

卡号

输出格式:

①输入错误处理

如果输入卡号不存在,则输出

Sorry,this card does not exist.

如果输入ATM机编号不存在,则输出

Sorry,the ATM’s id is wrong.

如果输入银行卡密码错误,则输出

Sorry,your password is wrong.

如果输入取款金额大于账户余额,则输出

Sorry,your account balance is insufficient.

②取款业务输出

输出共两行,格式分别为:

业务:取款 [用户姓名]在[银行名称]的[ATM编号]上取款¥[金额]

当前余额为¥[金额]

其中,[]说明括起来的部分为输出属性或变量,金额均保留两位小数。

③查询余额业务输出

业务:查询余额 ¥[金额]

金额保留两位小数。

解题报告

本题重点考察继承、多态及抽象类的应用 提示:所谓的借记卡与信用卡的说法实际是针对用户的账户类型

输入样例1:

6222081502001312390 88888888 06 500.00

输出样例1:

业务:取款 张无忌在中国工商银行的06号ATM机上取款¥500.00
当前余额为¥9500.00

输入样例2:

6217000010041315709 88888888 06 3500.00

输出样例2:

业务:取款 杨过在中国工商银行的06号ATM机上取款¥3500.00
当前余额为¥6395.00

输入样例3:

6217000010041315715

输出样例3:

业务:查询余额 ¥10000.00

输入样例4:

6222081502001312390 88888888 01 500.00
6222081502051320786 88888888 06 1200.00
6217000010041315715 88888888 02 1500.00
6217000010041315709 88888888 02 3500.00
6217000010041315715

输出样例4:

业务:取款 张无忌在中国建设银行的01号ATM机上取款¥500.00
当前余额为¥9490.00
业务:取款 韦小宝在中国工商银行的06号ATM机上取款¥1200.00
当前余额为¥8800.00
业务:取款 杨过在中国建设银行的02号ATM机上取款¥1500.00
当前余额为¥8500.00
业务:取款 杨过在中国建设银行的02号ATM机上取款¥3500.00
当前余额为¥5000.00
业务:查询余额 ¥5000.00

输入样例5:

6640000010045442002 88888888 09 3000
6640000010045442002 88888888 06 8000
6640000010045442003 88888888 01 10000
6640000010045442002

输出样例5:

业务:取款 张三丰在中国农业银行的09号ATM机上取款¥3000.00
当前余额为¥6880.00
业务:取款 张三丰在中国工商银行的06号ATM机上取款¥8000.00
当前余额为¥-1416.00
业务:取款 张三丰在中国建设银行的01号ATM机上取款¥10000.00
当前余额为¥-11916.00
业务:查询余额 ¥-11916.00

//代码长度为31kb!!!import java.util.Scanner;
import java.util.ArrayList;//Bank类
class Bank{String bankname;ArrayList<String> ATMList;//创建无参构造方法public Bank(){}//创建带参构造方法public Bank(String bankname,ArrayList<String> ATMList){this.bankname=bankname;this.ATMList=ATMList;}//getterpublic String getBankname() {return bankname;}public ArrayList<String> getATMList() {return ATMList;}//setterpublic void setBankname(String bankname){this.bankname=bankname;}public void setATMList(ArrayList<String> tATMList){this.ATMList=ATMList;}
}
//Account类
class Account{private String name;private String account;private String password;private double balance;ArrayList<Bank> banklist;Bank bank;private ArrayList<String> cardList;private ArrayList<String> ATMList;private ArrayList<String> BanknameList;//创建无参构造方法public Account(){}//创建带参构造方法public Account(String name,String account,String password,double balance,ArrayList<Bank> banklist,Bank bank,ArrayList<String> cardList,ArrayList<String> ATMList,ArrayList<String> BanknameList){this.name=name;this.account=account;this.password=password;this.balance=balance;this.bank=bank;this.banklist=banklist;this.cardList=cardList;this.ATMList=ATMList;this.BanknameList=BanknameList;}//getterpublic String getName() {return name;}public String getAccount() {return account;}public String getPassword() {return password;}public double getBalance() {return balance;}public ArrayList<String> getCardList() {return cardList;}public ArrayList<String> getATMList() {return ATMList;}public ArrayList<String> getBanknameList() {return BanknameList;}//setterpublic void setName(String name) {this.name = name;}public void setAccount(String account) {this.account = account;}public void setPassword(String password) {this.password = password;}public void setBalance(double balance) {this.balance = balance;}public void setCardList(ArrayList<String> cardList) {this.cardList = cardList;}public void setATMList(ArrayList<String> ATMList) {this.ATMList = ATMList;}public void setBanknameList(ArrayList<String> BanknameList) {this.BanknameList = BanknameList;}
}//存取款的检查类
class Check{ArrayList<Account> accountList;String card;String password;String number;double money;public Check(ArrayList<Account> accountList,String card,String password,String number,double money){this.accountList=accountList;this.card=card;this.password=password;this.number=number;this.money=money;}public boolean check(){int flag=0;int i,j,k=0;//检查账号是否正确for(i=0;i<accountList.size();i++){for(j=0;j<accountList.get(i).getCardList().size();j++){if (card.equals(accountList.get(i).getCardList().get(j))){flag=1;k=i;break;}}if(flag==1){break;}}//检查密码是否正确if(flag==1){if(password.equals(accountList.get(k).getPassword())){flag=2;}else{System.out.println("Sorry,your password is wrong.");//银行卡密码错误return false;}}else{System.out.println("Sorry,this card does not exist.");//卡号不存在return false;}//检查ATM机编号是否正确if(flag==2){for(i=0;i<accountList.get(k).banklist.size();i++){for(j=0;j<accountList.get(k).banklist.get(i).ATMList.size();j++){if(number.equals(accountList.get(k).banklist.get(i).ATMList.get(j))){flag=3;break;}}}}if(flag==3){return true;}else{System.out.println("Sorry,the ATM's id is wrong.");//ATM机编号不存在return false;}}
}
//余额查询的检查类
class Check1{ArrayList<Account> accountList;String card;public Check1(ArrayList<Account> accountList, String card){this.accountList = accountList;this.card = card;}public boolean check(){int i,j;int flag=0;//卡号校验for(i=0;i<accountList.size();i++){for(j=0;j<accountList.get(i).getCardList().size();j++){if (card.equals(accountList.get(i).getCardList().get(j))){flag=1;break;}}if(flag==1){break;}}if(flag==1)return true;else{System.out.println("Sorry,this card does not exist.");//卡号不存在return false;}}
}
//跨行检查类
class Check2{ArrayList<Account> accountList;String card;String password;String number;double money;public Check2(ArrayList<Account> accountList,String card,String password,String number,double money){this.accountList=accountList;this.card=card;this.password=password;this.number=number;this.money=money;}public boolean check(){int i,j,k=0;int flag=0;//卡号校验for(i=0;i<accountList.size();i++){for(j=0;j<accountList.get(i).getCardList().size();j++){if (card.equals(accountList.get(i).getCardList().get(j))){k=i;break;}}}//检查是否跨行for(i=0;i<accountList.get(k).bank.ATMList.size();i++){if(number.equals(accountList.get(k).bank.ATMList.get(i))){flag=1;break;}}if(flag==1){//未跨行return false;}else {//跨行return true;}}
}
//账号种类检查类
class Check3{ArrayList<Account> accountList;ArrayList<Account> accountList1;String card;String password;String number;double money;public Check3(ArrayList<Account> accountList,ArrayList<Account> accountList1,String card,String password,String number,double money){this.accountList=accountList;this.accountList1=accountList1;this.card=card;this.password=password;this.number=number;this.money=money;}public boolean check(){int i,j,k=0;int flag=0;//卡号校验for(i=0;i<accountList1.size();i++){for(j=0;j<accountList1.get(i).getCardList().size();j++){if (card.equals(accountList1.get(i).getCardList().get(j))){flag=1;break;}}}if(flag==1){//贷记账号return true;}else {//借记账号return false;}}
}
//金额检查类
class Check4{ArrayList<Account> accountList;String card;String password;String number;double money;public Check4(ArrayList<Account> accountList,String card,String password,String number,double money){this.accountList=accountList;this.card=card;this.password=password;this.number=number;this.money=money;}public boolean check() {int i, j, k = 0;int flag = 0;//卡号校验for (i = 0; i < accountList.size(); i++) {for (j = 0; j < accountList.get(i).getCardList().size(); j++) {if (card.equals(accountList.get(i).getCardList().get(j))) {k = i;break;}}}//检查是否跨行if(money<=accountList.get(k).getBalance()){return true;}else {System.out.println("Sorry,your account balance is insufficient.");//取款金额大于账户余额return false;}}
}//借记账号未跨行存取款类
class Access{ArrayList<Account> accountList;String card;String password;String number;double money;public Access(ArrayList<Account> accountList,String card,String password,String number,double money){this.password=password;this.number=number;this.card=card;this.accountList=accountList;this.money=money;}public void access(){int i,j,k=0;//卡号校验for(i=0;i<accountList.size();i++){for(j=0;j<accountList.get(i).getCardList().size();j++){if(card.equals(accountList.get(i).getCardList().get(j))){k=i;//System.out.println(accountList.get(k));break;}}}accountList.get(k).setBalance(accountList.get(k).getBalance()-money);}
}
//借记账号跨行存取款类
class Access1{ArrayList<Account> accountList;String card;String password;String number;double money;public Access1(ArrayList<Account> accountList,String card,String password,String number,double money){this.password=password;this.number=number;this.card=card;this.accountList=accountList;this.money=money;}public void access(){int i,j,k=0;double q=0;//卡号校验for(i=0;i<accountList.size();i++){for(j=0;j<accountList.get(i).getCardList().size();j++){if(card.equals(accountList.get(i).getCardList().get(j))){k=i;break;}}}//跨行取款手续费for(i=0;i<accountList.get(k).getATMList().size();i++){if(number.equals(accountList.get(k).getATMList().get(0))||number.equals(accountList.get(k).getATMList().get(1))||number.equals(accountList.get(k).getATMList().get(2))||number.equals(accountList.get(k).getATMList().get(3))){q=money*0.02;break;}else if (number.equals(accountList.get(k).getATMList().get(4))||number.equals(accountList.get(k).getATMList().get(5))){q=money*0.03;break;}else if(number.equals(accountList.get(k).getATMList().get(6))||number.equals(accountList.get(k).getATMList().get(7))||number.equals(accountList.get(k).getATMList().get(8))||number.equals(accountList.get(k).getATMList().get(9))||number.equals(accountList.get(k).getATMList().get(10))){q=money*0.04;break;}}accountList.get(k).setBalance(accountList.get(k).getBalance()-money-q);}
}
//贷记账号未跨行存取款类
class Access2{ArrayList<Account> accountList;String card;String password;String number;double money;public Access2(ArrayList<Account> accountList,String card,String password,String number,double money){this.password=password;this.number=number;this.card=card;this.accountList=accountList;this.money=money;}public void access(){int i,j,k=0;double l;//卡号校验for(i=0;i<accountList.size();i++){for(j=0;j<accountList.get(i).getCardList().size();j++){if(card.equals(accountList.get(i).getCardList().get(j))){k=i;//System.out.println(accountList.get(k));break;}}}//System.out.println("wkh");if(accountList.get(k).getBalance()>money&&accountList.get(k).getBalance()>0){accountList.get(k).setBalance(accountList.get(k).getBalance()-money);}else if(accountList.get(k).getBalance()<money&&accountList.get(k).getBalance()>0){l=(money-accountList.get(k).getBalance())*0.05;accountList.get(k).setBalance(accountList.get(k).getBalance()-money-l);}else if(accountList.get(k).getBalance()<money&&accountList.get(k).getBalance()<=0){l=money*0.05;accountList.get(k).setBalance(accountList.get(k).getBalance()-money-l);}}
}
//贷记账号跨行存取款类
class Access3 {ArrayList<Account> accountList;String card;String password;String number;double money;public Access3(ArrayList<Account> accountList, String card, String password, String number, double money) {this.password = password;this.number = number;this.card = card;this.accountList = accountList;this.money = money;}public void access() {int i, j, k = 0;double l,q=0;//卡号校验for (i = 0; i < accountList.size(); i++) {for (j = 0; j < accountList.get(i).getCardList().size(); j++) {if (card.equals(accountList.get(i).getCardList().get(j))) {k = i;//System.out.println(accountList.get(k));break;}}}//跨行取款手续费for (i = 0; i < accountList.get(k).getATMList().size(); i++) {if (number.equals(accountList.get(k).getATMList().get(0)) || number.equals(accountList.get(k).getATMList().get(1)) || number.equals(accountList.get(k).getATMList().get(2)) || number.equals(accountList.get(k).getATMList().get(3))) {q = money * 0.02;break;} else if (number.equals(accountList.get(k).getATMList().get(4)) || number.equals(accountList.get(k).getATMList().get(5))) {q = money * 0.03;break;} else if (number.equals(accountList.get(k).getATMList().get(6)) || number.equals(accountList.get(k).getATMList().get(7)) || number.equals(accountList.get(k).getATMList().get(8)) || number.equals(accountList.get(k).getATMList().get(9)) || number.equals(accountList.get(k).getATMList().get(10))) {q = money * 0.04;break;}}//System.out.println("kh");if (accountList.get(k).getBalance() >=money&&accountList.get(k).getBalance()>0) {accountList.get(k).setBalance(accountList.get(k).getBalance() - money - q);}else if(accountList.get(k).getBalance() <money&&accountList.get(k).getBalance()>0){l = (money - accountList.get(k).getBalance()) * 0.05;accountList.get(k).setBalance(accountList.get(k).getBalance() - money - l - q);}else if(accountList.get(k).getBalance() <money&&accountList.get(k).getBalance()<=0){l=money*0.05;accountList.get(k).setBalance(accountList.get(k).getBalance() - money - l - q);}}
}//借记账号存取款的展示类
class Show{ArrayList<Account> accountList;ArrayList<Account> accountList1;String card;String password;String number;double money;public Show(ArrayList<Account> accountList,ArrayList<Account> accountList1,String card,String password,String number,double money){this.accountList=accountList;this.accountList1=accountList1;this.card=card;this.password=password;this.number=number;this.money=money;}public void show(){int i,j,k=0;String bankname="";//卡号校验for(i=0;i<accountList.size();i++){for(j=0;j<accountList.get(i).getCardList().size();j++){if(card.equals(accountList.get(i).getCardList().get(j))){k=i;break;}}}//银行名称确认for(i=0;i<accountList.get(k).getATMList().size();i++){if(number.equals(accountList.get(k).getATMList().get(0))||number.equals(accountList.get(k).getATMList().get(1))||number.equals(accountList.get(k).getATMList().get(2))||number.equals(accountList.get(k).getATMList().get(3))){bankname=accountList.get(k).getBanknameList().get(0);break;}else if (number.equals(accountList.get(k).getATMList().get(4))||number.equals(accountList.get(k).getATMList().get(5))){bankname=accountList.get(k).getBanknameList().get(1);break;}else if(number.equals(accountList.get(k).getATMList().get(6))||number.equals(accountList.get(k).getATMList().get(7))||number.equals(accountList.get(k).getATMList().get(8))||number.equals(accountList.get(k).getATMList().get(9))||number.equals(accountList.get(k).getATMList().get(10))){bankname=accountList.get(k).getBanknameList().get(2);break;}}if(money>=0){//取款if(accountList.get(k).getBalance()>=0){System.out.printf("业务:取款 "+accountList.get(k).getName()+"在"+bankname+"的"+number+"号ATM机上取款¥%.2f\n",money);System.out.printf("当前余额为¥%.2f\n",accountList.get(k).getBalance());}else {System.out.println("Sorry,your account balance is insufficient.");//输入取款金额大于账户余额}}else{//存款money=-money;System.out.printf("业务:存款 "+accountList.get(k).getName()+"在"+accountList.get(k).bank.bankname+"的"+number+"号ATM机上存款¥%.2f\n",money);System.out.printf("当前余额为¥%.2f\n",accountList.get(k).getBalance());}}
}
//余额查询的展示类
class Show1{ArrayList<Account> accountList;String card;public Show1(ArrayList<Account> accountList,String card){this.accountList=accountList;this.card=card;}public void show1(){int i,j;int t=0;//卡号校验for(i=0;i<accountList.size();i++){for(j=0;j<accountList.get(i).getCardList().size();j++){if(card.equals(accountList.get(i).getCardList().get(j))){t=i;break;}}}System.out.printf("业务:查询余额 ¥%.2f\n",accountList.get(t).getBalance());}
}
//贷记账号存取款的展示类
class Show2{ArrayList<Account> accountList;ArrayList<Account> accountList1;String card;String password;String number;double money;public Show2(ArrayList<Account> accountList,ArrayList<Account> accountList1,String card,String password,String number,double money){this.accountList=accountList;this.accountList1=accountList1;this.card=card;this.password=password;this.number=number;this.money=money;}public void show() {int i, j, k = 0;String bankname = "";//卡号校验for (i = 0; i < accountList.size(); i++) {for (j = 0; j < accountList.get(i).getCardList().size(); j++) {if (card.equals(accountList.get(i).getCardList().get(j))) {k = i;break;}}}//银行名称确认for (i = 0; i < accountList.get(k).getATMList().size(); i++) {if (number.equals(accountList.get(k).getATMList().get(0)) || number.equals(accountList.get(k).getATMList().get(1)) || number.equals(accountList.get(k).getATMList().get(2)) || number.equals(accountList.get(k).getATMList().get(3))) {bankname = accountList.get(k).getBanknameList().get(0);break;} else if (number.equals(accountList.get(k).getATMList().get(4)) || number.equals(accountList.get(k).getATMList().get(5))) {bankname = accountList.get(k).getBanknameList().get(1);break;} else if (number.equals(accountList.get(k).getATMList().get(6)) || number.equals(accountList.get(k).getATMList().get(7)) || number.equals(accountList.get(k).getATMList().get(8)) || number.equals(accountList.get(k).getATMList().get(9)) || number.equals(accountList.get(k).getATMList().get(10))) {bankname = accountList.get(k).getBanknameList().get(2);break;}}if(money>0){//取款if(accountList.get(k).getBalance()>=(-50000)){System.out.printf("业务:取款 "+accountList.get(k).getName()+"在"+bankname+"的"+number+"号ATM机上取款¥%.2f\n",money);System.out.printf("当前余额为¥%.2f\n",accountList.get(k).getBalance());}else {System.out.println("Sorry,your account balance is insufficient.");//透支金额超过规定最大透支金额}}else{//存款money=-money;System.out.printf("业务:存款 "+accountList.get(k).getName()+"在"+accountList.get(k).bank.bankname+"的"+number+"号ATM机上存款¥%.2f\n",money);System.out.printf("当前余额为¥%.2f\n",accountList.get(k).getBalance());}}
}//主类
public class Main {public static void main(String[] args) {//ATM机编号数组ArrayList<String> ATMList1 = new ArrayList<>();ATMList1.add("01");ATMList1.add("02");ATMList1.add("03");ATMList1.add("04");Bank jsyh = new Bank("中国建设银行", ATMList1);ArrayList<String> ATMList2 = new ArrayList<>();ATMList2.add("05");ATMList2.add("06");Bank gsyh = new Bank("中国工商银行", ATMList2);ArrayList<String> ATMList3 = new ArrayList<>();ATMList3.add("07");ATMList3.add("08");ATMList3.add("09");ATMList3.add("10");ATMList3.add("11");Bank nyyh = new Bank("中国农业银行", ATMList3);ArrayList<String> ATMList = new ArrayList<>();ATMList.add("01");ATMList.add("02");ATMList.add("03");ATMList.add("04");ATMList.add("05");ATMList.add("06");ATMList.add("07");ATMList.add("08");ATMList.add("09");ATMList.add("10");ATMList.add("11");//银行数组ArrayList<Bank> bankList = new ArrayList<>();bankList.add(jsyh);bankList.add(gsyh);bankList.add(nyyh);ArrayList<String> banknameList = new ArrayList<>();banknameList.add("中国建设银行");banknameList.add("中国工商银行");banknameList.add("中国农业银行");//用户数组ArrayList<String> cardList1 = new ArrayList<>();cardList1.add("6217000010041315709");cardList1.add("6217000010041315715");Account account1 = new Account("杨过", "3217000010041315709", "88888888", 10000.00, bankList, jsyh,cardList1,ATMList,banknameList);ArrayList<String> cardList2 = new ArrayList<>();cardList2.add("6217000010041315718");Account account2 = new Account("杨过", "3217000010041315715", "88888888", 10000.00, bankList,jsyh,cardList2,ATMList,banknameList);ArrayList<String> cardList3 = new ArrayList<>();cardList3.add("6217000010051320007");Account account3 = new Account("郭靖", "3217000010051320007", "88888888", 10000.00, bankList,jsyh,cardList3,ATMList,banknameList);ArrayList<String> cardList4 = new ArrayList<>();cardList4.add("6222081502001312389");Account account4 = new Account("张无忌", "3222081502001312389", "88888888", 10000.00, bankList,gsyh,cardList4,ATMList,banknameList);ArrayList<String> cardList5 = new ArrayList<>();cardList5.add("6222081502001312390");Account account5 = new Account("张无忌", "3222081502001312390", "88888888", 10000.00, bankList,gsyh,cardList5,ATMList,banknameList);ArrayList<String> cardList6 = new ArrayList<>();cardList6.add("6222081502001312399");cardList6.add("6222081502001312400");Account account6 = new Account("张无忌", "3222081502001312399", "88888888", 10000.00, bankList,gsyh,cardList6,ATMList,banknameList);ArrayList<String> cardList7 = new ArrayList<>();cardList7.add("6222081502051320785");Account account7 = new Account("韦小宝", "3222081502051320785", "88888888", 10000.00, bankList,gsyh,cardList7,ATMList,banknameList);ArrayList<String> cardList8 = new ArrayList<>();cardList8.add("6222081502051320786");Account account8 = new Account("韦小宝", "3222081502051320786", "88888888", 10000.00, bankList,gsyh,cardList8,ATMList,banknameList);ArrayList<String> cardList9 = new ArrayList<>();cardList9.add("6640000010045442002");cardList9.add("6640000010045442003");Account account9 = new Account("张三丰", "3640000010045442002", "88888888", 10000.00, bankList,jsyh,cardList9,ATMList,banknameList);ArrayList<String> cardList10 = new ArrayList<>();cardList10.add("6640000010045441009");Account account10 = new Account("令狐冲", "3640000010045441009", "88888888", 10000.00, bankList,gsyh,cardList10,ATMList,banknameList);ArrayList<String> cardList11 = new ArrayList<>();cardList11.add("6630000010033431001");Account account11 = new Account("乔峰", "3630000010033431001", "88888888", 10000.00, bankList,nyyh,cardList11,ATMList,banknameList);ArrayList<String> cardList12 = new ArrayList<>();cardList12.add("6630000010033431008");Account account12 = new Account("洪七公", "3630000010033431008", "88888888", 10000.00, bankList,nyyh,cardList12,ATMList,banknameList);//借记账号用户总数组ArrayList<Account> accountList = new ArrayList<>();accountList.add(account1);accountList.add(account2);accountList.add(account3);accountList.add(account4);accountList.add(account5);accountList.add(account6);accountList.add(account7);accountList.add(account8);accountList.add(account9);accountList.add(account10);accountList.add(account11);accountList.add(account12);//贷记账号用户总数组ArrayList<Account> accountList1=new ArrayList<>();accountList1.add(account9);accountList1.add(account10);accountList1.add(account11);accountList1.add(account12);Scanner x=new Scanner(System.in);String kp;Check check;Check1 check1;Check2 check2;Check3 check3;Check4 check4;kp=x.nextLine();while(!kp.equals("#")){String[] shuju=kp.split("\\s+");//输入的每行数据用空格隔开,存为数组/*for(i=0;i<shuju.length;i++) {System.out.println(shuju[i]);}*/if(shuju.length!=1){//存取款check = new Check(accountList,shuju[0],shuju[1],shuju[2],Double.parseDouble(shuju[3]));check2 = new Check2(accountList,shuju[0],shuju[1],shuju[2],Double.parseDouble(shuju[3]));check3 = new Check3(accountList,accountList1,shuju[0],shuju[1],shuju[2],Double.parseDouble(shuju[3]));check4 = new Check4(accountList,shuju[0],shuju[1],shuju[2],Double.parseDouble(shuju[3]));if (check.check()){if(check3.check()){//贷记账号//System.out.println("贷记账号");if(check2.check()){//跨行Access3 access3 = new Access3(accountList,shuju[0], shuju[1],shuju[2],Double.parseDouble(shuju[3]));access3.access();//System.out.println("跨行");Show2 show2 = new Show2(accountList,accountList1,shuju[0], shuju[1],shuju[2],Double.parseDouble(shuju[3]));show2.show();}else {//未跨行Access2 access2 = new Access2(accountList,shuju[0], shuju[1],shuju[2],Double.parseDouble(shuju[3]));access2.access();//System.out.println("未跨行");Show2 show2 = new Show2(accountList,accountList1,shuju[0], shuju[1],shuju[2],Double.parseDouble(shuju[3]));show2.show();}}else {//借记账号if(check4.check()){//金额检查if(check2.check()){//跨行Access1 access1 = new Access1(accountList,shuju[0], shuju[1],shuju[2],Double.parseDouble(shuju[3]));access1.access();Show show = new Show(accountList,accountList1,shuju[0], shuju[1],shuju[2],Double.parseDouble(shuju[3]));show.show();}else {//未跨行Access access = new Access(accountList,shuju[0], shuju[1],shuju[2],Double.parseDouble(shuju[3]));access.access();Show show = new Show(accountList,accountList1,shuju[0], shuju[1],shuju[2],Double.parseDouble(shuju[3]));show.show();}}}}}else {//余额check1=new Check1(accountList,shuju[0]);if(check1.check()){Show1 show1= new Show1(accountList,shuju[0]);show1.show1();}}kp=x.nextLine();}}

7-1 ATM机类结构设计(二) (100 分)相关推荐

  1. 7-1 ATM机类结构设计(一) (100 分)

    ** 7-1 ATM机类结构设计(一) (100 分) ** 设计ATM仿真系统,具体要求参见作业说明. OO作业8-1题目说明.pdf 输入格式: 每一行输入一次业务操作,可以输入多行,最终以字符# ...

  2. ATM机类结构设计(一)

    7-5 ATM机类结构设计(一) 分数 84 作者 段喜龙 单位 南昌航空大学 设计ATM仿真系统,具体要求参见作业说明. OO作业8-1题目说明.pdf 输入格式: 每一行输入一次业务操作,可以输入 ...

  3. ATM机为什么不能存100张?

    "ATM机为什么不能存100张?"这样的问法容易引起歧义,ATM不是只能存100张,而是: 银行ATM存款机单次只能放100张. 所有人到银行ATM存款的时候,都会听到这样的语音& ...

  4. 6-2 综合成绩排名-结构体二 (100分)

    6-2 综合成绩排名-结构体二 (100分) 众所周知,计算机院要对申请转入计算机大类的学生进行考核,考核方式包括机试和面试.学生综合成绩采取百分制,其中50%由机试成绩核算,另50%由学生已获得的加 ...

  5. atm机java设计_JAVA提款机设计报告

    <JAVA提款机设计报告>由会员分享,可在线阅读,更多相关<JAVA提款机设计报告(24页珍藏版)>请在人人文库网上搜索. 1.沈阳理工大学应用技术学院JAVA程序设计综合实验 ...

  6. 课程设计:基于JavaWeb实现ATM机系统

    作者主页:编程千纸鹤 作者简介:Java.前端.Pythone开发多年,做过高程,项目经理,架构师 主要内容:Java项目开发.毕业设计开发.面试技术整理.最新技术分享 一,项目简介 本项目主要实现一 ...

  7. ATM柜员机JAVA课程设计_JAVA课程设计报告银行ATM机系统.doc

    JAVA课程设计报告银行ATM机系统 Java课程设计报告 题 目 银行ATM机系统 所在院系 软件学院 学生姓名 金磊 专 业 R机械+软件 班 级 R机械094 学 号 2011年 7 月 15日 ...

  8. java模拟atm 课程设计_java课程设计ATM机(图形用户)代码

    [实例简介] 这是我在大二的时候学java时自己写的一个模拟ATM机的小程序,用了图形用户界面,数据库,绝对原创 [实例截图] [核心代码] atm └── atm ├── bin │   └── c ...

  9. 模拟ATM机存取款管理系统C语言课程设计

    模拟ATM机存取款管理系统(只列出了大体的框架,需要源码的朋友请私信联系.) 1.问题描述 模拟银行的自动取款机使用过程中的界面和用户交互过程.实现查询银行卡余额.取款.修改密码.退出系统等功能. 2 ...

最新文章

  1. Ubuntu9.10使用windows的字体的方法!
  2. python小爬虫之天气查询
  3. 位置相关属性offset(),position(),scrollTop()等
  4. oracle怎么设置sql每隔一段时间执行一次_Oracle大规模数据快速导出文本文件
  5. 为什么大家都说 SELECT * 效率低?
  6. 2020-11-17(补码的非)
  7. 在学习Python基础中需要知道的知识点:运算符大全,收藏,以后方面查询(算术运算符、赋值运算符、比较运算符、位运算符、逻辑运算符、成员运算符、身份运算符、运算符优先级))
  8. 预览速度提升30倍,这是什么黑科技?(天猫618之3D渲染篇)
  9. Android_(菜单)选项菜单
  10. 【Linux系统编程】线程池
  11. Django(part50)--Web请求认证
  12. 情感分析朴素贝叶斯_朴素贝叶斯推文的情感分析
  13. Excel表Ctrl+v和Ctrl shift+v有什么区别_Ctrl键与10个数字键,26个字母键的组合应用技巧解读...
  14. Python机器学习:KNN算法08scikit-learn中的Scaler
  15. Lecture 4 Microphone
  16. 海上风电消防火灾报警系统中消防主机超远距离联网方案
  17. 两台电脑访问共享文件出现权限不够的问题
  18. micropython-SPI通讯
  19. c 语言开发什么,c语言能开发什么
  20. 35岁程序员该何去何从

热门文章

  1. [转]Windows 下常用盗版软件的替代免费软件列表
  2. Day5作业,商城+ATM机+后台管理
  3. Idea分享项目到全球最大同x交友网站gayhub居然失败了!我居然没有权限!来看看解决方法吧
  4. java 事件分发线程_事件分发线程EDT
  5. TextClock不管是24小时还是12小时都显示24小时时间
  6. 习题 6.5 有n个人围成一圈,顺序排号。从第1个人开始报数(从1~3报数),凡报到3的人退出圈子,问最后留下的人原来排在第几号。
  7. 哈工大软件构造lab3
  8. 热血传奇手游IOS辅助哪个好呢?
  9. 闪动的文字图片怎么制作?教你一招闪图在线制作
  10. 小程序项目:基于微信小程序的师生答疑交流平台APP——计算机毕业设计