package com.hp.demo2;/*Account类封装储户信息及部分功能*/
import java.io.*;
public class Account {
private String number=null; //卡号
private String password=null; //客户密码
private double money=0.0; //余额
private String bankName=null; //卡名
private String name=null; //客户姓名
/*构造方法,以生成多个储户信息*/
public Account(String number,String name,String password,double money) {
this.number=number;
this.name=name;
this.password=password;
this.money=money;
this.bankName = bankName;
}
protected String get_number() {
return number;
}
protected String get_Name() {
return name;
}
protected String get_Password() {
return password;
}
public String getBankName() {return bankName;}
public void setBankName(String bankName) {
this.bankName = bankName;
}
public double get_Money() {
return money;
}
protected void sub_Balance(double mon) {
money-=mon;
} //余额减少
protected void add_Balance(double mon) {
money+=mon;
} //余额增加
}
package com.hp.demo2;
import java.io.*;
class ATM {
Account act;
Account act2;
public ATM() throws FileNotFoundException {
BufferedReader br =null;
br=new BufferedReader(new FileReader("goods.txt"));
}
protected void Welcome() {
String str="---------------------";
System.out.print(str+"\n");
System.out.print("1.取款."+"\n"+"2.查询."+"\n"+"3.存款."+"\n"+"4.退出系统"+"\n"+"5.转账");
System.out.print(str+"\n");
}
protected void Load_Sys() throws Exception {
String card,pwd;
int counter=0;
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
do {
System.out.println("请输入您的卡号:");
card=br.readLine();
System.out.println("请输入您的密码:");
pwd=br.readLine();
if(!isRight(card,pwd)) {
System.out.println("您的卡号和密码有误:");
counter++;
}else
SysOpter();
}while(counter<3);
System.exit(1);
}
protected void SysOpter()throws Exception{
int num;
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
System.out.println("请选择您要操作的项目");
num=br.read();
switch(num) {
case 49:
BetBalance();
break;
case 50:
Inqu_Info();
break;
case 51:
AddBalance();
case 53:
ZhuanZhang();
case 52:
Exit_Sys();
break;
}
System.exit(1);
}
protected void Inqu_Info()throws Exception{
System.out.print("------------------------\n"+"账号:"+act.get_number()+"姓名;"+act.get_Name()+"余额:"+act.get_Money()+"\n"+"------------------------\n");
SysOpter();
}
public void BetBalance() throws Exception{
String str=null,str1;
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
do {
System.out.println("请输入取款项目:");
str=br.readLine();
double qu=Double.valueOf(str).doubleValue();
if(qu>act.get_Money()) {
System.out.println("余额不足,请重新输入你要取的数目:");
}else {
act.sub_Balance(qu);
System.out.println("取款成功,您账户的余额为:"+act.get_Money());
Welcome();
SysOpter();
}
}while(true);
}
public void AddBalance() throws Exception{
String str=null,str1;
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
do {
System.out.println("请输入存款项目:");
str=br.readLine();
double qu=Double.valueOf(str).doubleValue();
act.add_Balance(qu);
System.out.println("存款成功,您账户的余额为:"+act.get_Money());
Welcome();
SysOpter();
}while(true);
}
public boolean isBalance() {
if (act.get_Money()<0) {
return false;
}
return true;
}
protected boolean isRight(String card,String pwd) {
if (act.get_number().equals(card)&&act.get_Password().equals(pwd))
return true;
else
return false;
}
protected boolean isRight2(String card,String pwd) {
if (act2.get_number().equals(card)&&act.get_Password().equals(pwd))
return true;
else
return false;
}
protected void Exit_Sys() {
System.out.println("感谢您使用本系统,再见!");
System.exit(1);
}
/*转账功能*/
protected void ZhuanZhang() throws Exception {
String card,pwd;
int counter=0;
BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
do {
System.out.println("请输入您要转账的卡号:");
card=br.readLine();
System.out.println("请输入您的密码:");
pwd=br.readLine();
if(!isRight2(card,pwd)) {
System.out.println("您的转账卡号和密码有误:");
counter++;
}else
do {
System.out.println("请输入转账的金额:");
String str = br.readLine();
double qu=Double.valueOf(str).doubleValue();
if(qu>act.get_Money()) {
System.out.println("余额不足,请重新输入你要转账的数目:");
}else {
act.sub_Balance(qu);
double qu1=Double.valueOf(str).doubleValue();
act2.add_Balance(qu1);
System.out.println("转账成功,您账户的余额为:"+act.get_Money());
System.out.println("存款成功,账户2的余额为:"+act2.get_Money());
Welcome();
SysOpter();
}
}while(true);
}while(counter<3);
System.exit(1);
}
}