1. 程式人生 > >做一個簡單的銀行、賬戶演示程式。 (1)定義一個賬戶類,包含使用者名稱、密碼、餘額等屬性、存錢、取錢等方法。 (2)定義一個銀行類,包含銀行名、賬戶列表等屬性,開賬戶、查賬戶的功能。賬戶列表可以使用集

做一個簡單的銀行、賬戶演示程式。 (1)定義一個賬戶類,包含使用者名稱、密碼、餘額等屬性、存錢、取錢等方法。 (2)定義一個銀行類,包含銀行名、賬戶列表等屬性,開賬戶、查賬戶的功能。賬戶列表可以使用集

做一個簡單的銀行、賬戶演示程式。

(1)定義一個賬戶類,包含使用者名稱、密碼、餘額等屬性、存錢、取錢等方法。

(2)定義一個銀行類,包含銀行名、賬戶列表等屬性,開賬戶、查賬戶的功能。賬戶列表可以使用集合相關的類,如ArrayList,最好同時使用泛型。

(3)定義一個測試類及main函式,在其中建立一個銀行,開設一些賬號,模擬存錢、取錢、顯示餘額等。

package 銀行賬戶演示;
//import java.util.*;
//(1)定義一個賬戶類,包含使用者名稱、密碼、餘額等屬性、存錢、取錢等方法。
public class Account {
	private String user;//使用者名稱
	private String passcode;//密碼
	private double balance;//餘額
	public Account(String user, String passcode, double balance) {
		this.user = user;
		this.passcode = passcode;
		this.balance = balance;
	}
	public String getUser() {
		return user;
	}
	public void setUser(String user) {
		this.user = user;
	}
	public String getPasscode() {
		return passcode;
	}
	public void setPasscode(String passcode) {
		this.passcode = passcode;
	}
	public double getBalance() {
		return balance;
	}
	public void setBalance(double balance) {
		this.balance = balance;
	}
	//存錢
	public void savemoney(double money)
	{
		balance += money;
		System.out.printf("%s存了%.2f元,賬戶餘額為%.2f元。\n",user,money,balance);
	}
	//取錢
	public void drawmoney(double money)
	{
		if( balance - money < 0)
		{
			System.out.println("賬戶餘額不足,無法取錢");
		}
		else
		{
			balance -= money;
			System.out.printf("%s取了%.2f元,賬戶餘額為%.2f元。\n",user,money,balance);
		}
	}
	public void show(){  
		//顯示賬戶資訊  
		System.out.printf("user:%s\n",user);  
		System.out.printf("balance:%.2f\n",balance);  
		}  
}
package 銀行賬戶演示;

import java.util.*;

//(2)定義一個銀行類,包含銀行名、賬戶列表等屬性,開賬戶、查賬戶的功能。賬戶列表可以使用集合相關的類,如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 user,String passcode,double money)
	{
		account.add(new Account(user,passcode,money));
	}
	//查詢賬戶按使用者名稱,若找到,返回該賬戶,否則,返回null  
	public Account SeekAccount(String username)
	{
		for(Account account : account)
		{
			if(username.equals(account.getUser()))
				return account;
		}
		return null;
	}
	//顯示該使用者賬戶資訊
	public void showAccount(String userName){  
		Account account = SeekAccount(userName);  
		if(account == null)  
		    System.out.println("該賬戶不存在。");  
		else  
		    account.show();  
		} 
	//向特定賬戶存錢  
	public void saveMoney(String userName,double money){  
		Account account = SeekAccount(userName); //查詢  
		if(account == null)  
		    System.out.println("該賬戶不存在。");  
		else  
		    account.savemoney(money);  
		} 
	//從特定賬戶取錢,需驗證密碼  
	public void drawMoney(String userName,double money,String password){  
		Account account = SeekAccount(userName); //查詢  
		if(account==null)  
		    System.out.println("該賬戶不存在。");  
		else 
		{  
		    if(password.equals(account.getPasscode())) 
		    {  
		        account.drawmoney(money);
		    }
		    else 
		    {  
		        System.out.println("密碼不正確,取錢失敗。");  
		    }  
		}  
	}  

}
package 銀行賬戶演示;
/*
做一個簡單的銀行、賬戶演示程式。

(1)定義一個賬戶類,包含使用者名稱、密碼、餘額等屬性、存錢、取錢等方法。

(2)定義一個銀行類,包含銀行名、賬戶列表等屬性,開賬戶、查賬戶的功能。賬戶列表可以使用集合相關的類,如ArrayList,最好同時使用泛型。

(3)定義一個測試類及main函式,在其中建立一個銀行,開設一些賬號,模擬存錢、取錢、顯示餘額等。
*/
public class Test {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Bank bank = new Bank("中國農業銀行");
		bank.OpenAccount("梅西", "666666", 999999);
		bank.OpenAccount("梅東", "99999", 10000);
		bank.OpenAccount("梅方", "222222", 4000);
		
		//存錢
		bank.saveMoney("梅方", 100);
		
		//從特定賬戶取錢,需驗證密碼  
		bank.drawMoney("梅方",1000,"222222");
		
		//顯示賬戶資訊
		bank.showAccount("梅方");  

		//存錢
		bank.saveMoney("梅東", 10000);
		
		//密碼錯誤,取錢失敗的情況  
		bank.drawMoney("梅東",20000,"222222");
		
		//餘額不足的情況 
		bank.drawMoney("梅西",1000000,"666666");  
	}

}