public class BankAccountModel extends Observable
1: //BankAccountModel.java
2: //Adapted from an example by Tony Sintes.
3: //BankAccountModel manages the account's state and behavior.
4: //Also notifies observers interested in model state changes.
6: import java.util.Observable;
8: public class BankAccountModel extends Observable
9: {
10: private double balance;
11:
12: //Constructor
13: public BankAccountModel(double initDeposit)
14: {
15: setBalance(initDeposit);
16: }
18: protected void setBalance(double newBalance)
19: {
20: balance = newBalance;
21: notifyObservers();
22: }
23:
24: public double getBalance()
25: {
26: return balance;
27: }
29: public void depositFunds(double amount)
30: {
31: setBalance(getBalance() + amount);
32: }
34: public void withdrawFunds(double amount)
35: {
36: if (amount > getBalance()) amount = getBalance();
37: setBalance(getBalance() - amount);
38: }
39: }