一、银行ATM

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);
		
	}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值