/** Simulate a bank account. */ public class BankAccount { /** Create a new bank account with an initial deposit. */ public BankAccount (String accountName) { name = accountName; number = ++lastNumber; balance = 0; } /** Deposit a positive amount. */ public boolean deposit (int amount) { if (amount <= 0) return false; balance += amount; return true; } /** Withdraw a positive amount that is less than or equal to the balance. */ public boolean withdraw (int amount) { if (amount <= 0 || amount > balance) return false; balance -= amount; return true; } public int getBalance() { return balance; } public int getNumber() { return number; } public int getLastNumber() { return lastNumber; } public String getName() { return name; } public String toString() { return "BankAccount" + "[number=" + number + ",name=" + name + ",balance=" + balance + "]"; } private int number; // account number starting from 0 private String name; // account holder's name(s) private int balance; // amount of money in the bank in Ushs private static int lastNumber = -1; }