Due by midnight, Sunday Apr 17, 2005
This assignment is INDIVIDUAL and not a team assignment!
Goal of this assignment
Remember the BankAccount assignment you did for Assignment 2? In this assignment, you will upgrade your program to use JDBC and store all the data in a database so that the information is not lost when you close the application. The following are explicit requirements in this assignment for everyone:
S528 Students: You will also need to use inheritance, polymorphism, abstract classes, and interfaces (as appropriate) to implement a full-scale checking and savings account. The following are the differences in the assignment for S528 students only:
The following is a sample run of the system (for s528 students only - for s428 students, the program run will look the same as that in Assignment 2):
Welcome to my ATM! Please Swipe your Card! Enter negative number to exit. Enter ATM Number: 1234 New User! Your name is: Jit Your PIN: asdf Invalid PIN! Your PIN: 345678 Invalid PIN! Your PIN: 3456 Your default currency: USD Your default currency is set to United States Dollars (USD). You are using your checking account. Hello, Jit! Your options are: 0. Switch to savings account 1. Check Balance 2. Add Funds 3. Make a purchase 4. View Transactions 5. Write a check 6. Log out Your choice: 1 Your balance is USD 0.00 Hello, Jit! Your options are: 0. Switch to savings account 1. Check Balance 2. Add Funds 3. Make a purchase 4. View Transactions 5. Write a check 6. Log out Your choice: 2 Amount of funds to add: 500 Currency of deposit: USD Your balance is USD 500.0 Hello, Jit! Your options are: 0. Switch to savings account 1. Check Balance 2. Add Funds 3. Make a purchase 4. View Transactions 5. Write a check 6. Log out Your choice: 3 Purchase amount: 75.50 Purchase currency: USD Purchase purpose: grocery Your balance is USD 424.50 Hello, Jit! Your options are: 0. Switch to savings account 1. Check Balance 2. Add Funds 3. Make a purchase 4. View Transactions 5. Write a check 6. Log out Your choice: 5 Check no : 101 Payee: Electric Company Check amount : 34.56 Check currency: USD Hello, Jit! Your options are: 0. Switch to savings account 1. Check Balance 2. Add Funds 3. Make a purchase 4. View Transactions 5. Write a check 6. Log out Your choice: 4 1. Deposit USD 500.0 2. grocery (USD 75.5) 3. Check # 101 to: Electric Company (USD 34.56) Hello, Jit! Your options are: 0. Switch to savings account 1. Check Balance 2. Add Funds 3. Make a purchase 4. View Transactions 5. Write a check 6. Log out Your choice: 1 Your balance is USD 389.94 Hello, Jit! Your options are: 0. Switch to savings account 1. Check Balance 2. Add Funds 3. Make a purchase 4. View Transactions 5. Write a check 6. Log out Your choice: 0 You are now using your Savings Account. Hello, Jit! Your options are: 0. Switch to checking account 1. Check Balance 2. Add Funds 3. Make a purchase 4. View Transactions 5. Find Interest Income 6. Log out Your choice: 1 Your balance is USD 0.0 Hello, Jit! Your options are: 0. Switch to checking account 1. Check Balance 2. Add Funds 3. Make a purchase 4. View Transactions 5. Find Interest Income 6. Log out Your choice: 2 Amount of funds to add: 300 Currency of deposit: USD Your balance is USD 300.0 Hello, Jit! Your options are: 0. Switch to checking account 1. Check Balance 2. Add Funds 3. Make a purchase 4. View Transactions 5. Find Interest Income 6. Log out Your choice: 5 Your current interest earling is: USD 7.50 Hello, Jit! Your options are: 0. Switch to checking account 1. Check Balance 2. Add Funds 3. Make a purchase 4. View Transactions 5. Find Interest Income 6. Log out Your choice: 0 You are now using your Checking Account. Hello, Jit! Your options are: 0. Switch to savings account 1. Check Balance 2. Add Funds 3. Make a purchase 4. View Transactions 5. Write a check 6. Log out Your choice: 5 Check no: : 102 Payee: : Credit Card co. Check amount: : 400 Check currency: USD Hello, Jit! Your options are: 0. Switch to savings account 1. Check Balance 2. Add Funds 3. Make a purchase 4. View Transactions 5. Write a check 6. Log out Your choice: 1 Your balance is USD 0.0 Hello, Jit! Your options are: 0. Switch to savings account 1. Check Balance 2. Add Funds 3. Make a purchase 4. View Transactions 5. Write a check 6. Log out Your choice: 4 1. Deposit USD 500.0 2. grocery (USD 75.5) 3. Check # 101 to: Electric Company (USD 34.56) 4. Deposit USD 10.06 5. Check # 102 to: Credit Card co. (USD 400.0) Hello, Jit! Your options are: 0. Switch to savings account 1. Check Balance 2. Add Funds 3. Make a purchase 4. View Transactions 5. Write a check 6. Log out Your choice: 0 You are now using your Savings Account. Hello, Jit! Your options are: 0. Switch to checking account 1. Check Balance 2. Add Funds 3. Make a purchase 4. View Transactions 5. Find Interest Income 6. Log out Your choice: 4 1. Deposit USD 300.0 2. Overdraft transfer to Checking (USD 10.06) 3. Overdraft fee (USD 1.0) Hello, Jit! Your options are: 0. Switch to checking account 1. Check Balance 2. Add Funds 3. Make a purchase 4. View Transactions 5. Find Interest Income 6. Log out Your choice: 1 Your balance is USD 288.94 Hello, Jit! Your options are: 0. Switch to checking account 1. Check Balance 2. Add Funds 3. Make a purchase 4. View Transactions 5. Find Interest Income 6. Log out Your choice: 6 Welcome to my ATM! Please Swipe your Card! Enter negative number to exit. Enter ATM Number: -1 Bye!
Your implementation should have the BankApplication.java file
(and any other java file you feel necessary).
What to hand in
Name the main class in this assignment BankApplication.java. You
will most likely have several other class files. You will need to hand in all
the java files you use in this assignment. You will also need to hand in a file
BankApplication.doc containing an UML class diagram that captures
your design.
Submission method You will need to submit your assignment using the online submission system. To submit, use the following steps: