account.java

来自「A bank system」· Java 代码 · 共 137 行

JAVA
137
字号

import java.text.DecimalFormat;
import java.io.Serializable;
import java.util.ArrayList;

/**
 * This is the supper class of CreditAccount, SavingAccount and LoanAccount
 *
 */
public abstract class Account implements Serializable {
	
	private int accountNumber;
	private double accountBalance;
	private double openingBalance;
	private char status;
	private ArrayList<Customer> accountOwnerArrayList;
	private ArrayList<Transaction> transactionHistoryArrayList;
	//private Transaction forReturnToCommand;
	//private boolean completeTransaction;
		
	/**
	 * The constructor has a responsible to initial value for all essential data when the object is created
	 */
	public Account(){
		accountNumber 		= 0;
		accountBalance 		= 0.00;
		openingBalance 		= 0.00;
		status				= 'C';
		transactionHistoryArrayList = new ArrayList<Transaction>();
		//forReturnToCommand = new Transaction();
	}
	
	/**
	 * This method cope with all deposit operations and transactions
	 * @param accountNumber				: Account number of Account ID --> seven digit number
	 * @param amount					: the deposit amount
	 * @param transactionArrayListObject: the history of transaction
	 */
	public abstract void deposit(int accountNumber, double amount, ArrayList<Transaction> transactionArrayListObject);
	/**
	 * This method cope with all withdraw operations and transactions
	 * @param accountNumber				: Account number of Account ID --> seven digit number
	 * @param amount					: the withdraw amount
	 * @param transactionArrayListObject: the history of transaction
	 */
	public abstract void withdraw(int accountNumber, double amount, ArrayList<Transaction> transactionArrayListObject);
	/**
	 * This method shows the transaction history of account
	 * @param accountNumber	: Account number of Account ID --> seven digit number
	 */
	public abstract void transaction(int accountNumber);
	
	/**
	 * This method shows the balance amount of account
	 * @param accountNumber	: Account number of Account ID --> seven digit number
	 */
	public void balance(int accountNumber){
		DecimalFormat decimalPattern = new DecimalFormat("0.00");
		
		if(this.getAccountNumber() == accountNumber){
			System.out.println("Current balance for account "+this.getAccountNumber()+" is "+"$"+decimalPattern.format(this.getAccountBalance()));
		}else{
			System.out.println("Error!!! Wrong account number");
		}
	}

	public double getAccountBalance() {
		return accountBalance;
	}

	public void setAccountBalance(double accountBalance) {
		this.accountBalance = accountBalance;
	}

	public int getAccountNumber() {
		return accountNumber;
	}

	public void setAccountNumber(int accountNumber) {
		this.accountNumber = accountNumber;
	}

	public ArrayList<Customer> getAccountOwnerArrayList() {
		return accountOwnerArrayList;
	}

	public void setAccountOwnerArrayList(ArrayList<Customer> accountOwnerArrayList) {
		this.accountOwnerArrayList = accountOwnerArrayList;
	}

	/*
	public boolean isCompleteTransaction() {
		return completeTransaction;
	}

	public void setCompleteTransaction(boolean completeTransaction) {
		this.completeTransaction = completeTransaction;
	}

	
	public Transaction getForReturnToCommand() {
		return forReturnToCommand;
	}

	public void setForReturnToCommand(Transaction forReturnToCommand) {
		this.forReturnToCommand = forReturnToCommand;
	}
	*/

	public double getOpeningBalance() {
		return openingBalance;
	}

	public void setOpeningBalance(double openingBalance) {
		this.openingBalance = openingBalance;
	}

	public char getStatus() {
		return status;
	}

	public void setStatus(char status) {
		this.status = status;
	}

	public ArrayList<Transaction> getTransactionHistoryArrayList() {
		return transactionHistoryArrayList;
	}

	public void setTransactionHistoryArrayList(
			ArrayList<Transaction> transactionHistoryArrayList) {
		this.transactionHistoryArrayList = transactionHistoryArrayList;
	}

		
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?