一个简单的银行、账户演示程序

#做一个简单的银行、账户演示程序。

(1)定义一个账户类,包含用户名、密码、余额等属性、存钱、取钱等方法(4分)。

(2)定义一个银行类,包含银行名、账户列表等属性,开账户、查账户的功能。账户列表可以使用集合相关的类,如ArrayList,最好同时使用泛型(4分)。

(3)定义一个测试类及main函数,在其中创建一个银行,开设一些账号,模拟存钱、取钱、显示余额等(2分)。
1、账户类

package YinHang;
/*
 * 定义一个账户类,包含用户名、密码、余额等属性、存钱、取钱等方法
 */
public class Account {
	
	//账户名称
	private String acno;
	
	//账户密码
	private int acmima;

	//账户金额
	private double balance;
	//无参构造
	public Account() {
		
	}
	//有参构造
	public Account(String acno,int acmima,double balance ) {
		this.acno = acno;
		this.acmima = acmima;
		this.balance = balance;
		
	}
	

	//封装接口
	public String getAcno() {
		return acno;
	}

	public void setAcno(String acno) {
		this.acno = acno;
	}

	public int getAcmima() {
		return acmima;
	}

	public void setAcmima(int acmima) {
		this.acmima = acmima;
	}

	public double getBalance() {
		return balance;
	}

	public void setBalance(double balance) {
		this.balance = balance;
	}
	//存钱
	public void savemoney(double money) {
		balance += money;
		System.out.println("已存入:"+money+"元;"+"余额:"+balance);
	}
	//取钱
	public void withdrawmoney(double money) {
		double temp;
		temp = balance - money;
		if (temp > 0) {
			System.out.println("取出:"+ money + "元;"+"余额:"+balance);
		}
		if (temp < 0) {
			System.out.println("对不起!你的余额已不足!");
		}
	}
	public void show() {
		System.out.println("姓名:"+acno+"\n"+"账户余额:"+balance);
	}
}


2、银行类


package YinHang;
import java.util.*;
/*
 * 定义一个银行类,包含银行名、账户列表等属性,开账户、查账户的功能。
 * 账户列表可以使用集合相关的类,如ArrayList,最好同时使用泛型
 */
 
public class Bank {
	
	public String BankName;
	
	private ArrayList<Account> account;
	
	Bank(String bankName){  
		this.BankName=bankName;  
		account = new ArrayList<Account>();  
		}  
	public Bank(String BankName, ArrayList<Account> account) {
		this.BankName = BankName;
		this.account = account;
	}
	//开账户
	public void OpenAccount(String acno,int acmima,double balance)
	{
		account.add(new Account(acno,acmima,balance));
	}
	//查找账户按用户名,若找到,返回该账户,否则,返回null  
	public Account SeekAccount(String anco)
	{
		for(Account account : account)
		{
			if(anco.equals(account.getAcno()))
				return account;
		}
		return null;
	}
	//显示该用户账户信息
	public void showAccount(String acno){  
		Account account = SeekAccount(acno);  
		if(account == null)  
		    System.out.println("该账户不存在。");  
		else  
		    account.show();  
		} 
	//向特定账户存钱  
	public void saveMoney(String anco,double money){  
		Account account = SeekAccount(anco); //查找  
		if(account == null)  
		    System.out.println("该账户不存在。");  
		else  
		    account.savemoney(money);  
		} 
	//从特定账户取钱,需验证密码  
	public void withdrawMoney(String anco,double money,int acmima){  
		Account account = SeekAccount(anco); //查找  
		if(account==null)  
		    System.out.println("该账户不存在。");  
		else 
		{  
		    if(acmima == (account.getAcmima())) 
		    {  
		        account.withdrawmoney(money);
		    }
		    else 
		    {  
		        System.out.println("密码不正确,取钱失败。");  
		    }  
		}  
	}  
 
}

3、测试类。

package YinHang;
/*
做一个简单的银行、账户演示程序。
(1)定义一个账户类,包含用户名、密码、余额等属性、存钱、取钱等方法。
(2)定义一个银行类,包含银行名、账户列表等属性,开账户、查账户的功能。账户列表可以使用集合相关的类,如ArrayList,最好同时使用泛型。
(3)定义一个测试类及main函数,在其中创建一个银行,开设一些账号,模拟存钱、取钱、显示余额等。
*/
public class Test {
 
	public static void main(String[] args) {
		Bank bank = new Bank("中国银行");
		bank.OpenAccount("张三", 66, 99);
		bank.OpenAccount("李四", 66, 99);
		bank.OpenAccount("王五", 66, 40);
		
		//存钱
		bank.saveMoney("张三", 100);
		//结果:已存入:100.0元;余额:199.0
		//从特定账户取钱,需验证密码  
		bank.withdrawMoney("张三",10,66);
		//取出:10.0元;余额:199.0
		//显示账户信息
		bank.showAccount("张三");  
		//姓名:张三
		//存钱
		bank.saveMoney("李四", 100);
		//账户余额:199.0
		//密码错误,取钱失败的情况  
		bank.withdrawMoney("李四",99,6);
		//密码不正确,取钱失败。
		//余额不足的情况 
		bank.withdrawMoney("李四",2000,66);  
		//对不起!你的余额已不足!
	}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值