hw 5
please review the info below
2 years ago
60
hw5cos.docx
hw5cos.docx
|
Write a program named bank.java that allows you to set up checking accounts and loan accounts. This file should include 3 classes: Customer, CheckingAccount, LoanAccount. The CheckingAccount and LoanAccount classes inherit from the Customer class. Create an ArrayList of 5 Checking Account customers and an ArrayList of 5 Loan Account customers. The program should be set up in a loop with the following menu options: (1) Bank Information (show BankBalance, Bank Transactions, Number Customers) (2) Print all Checking accounts (3) Deposit Money (ask user for the Record# and Amount) (4) Withdraw Money (ask user for the Record# and Amount) (5) Print all Loan accounts (6) Make Loan (ask user for the Record# and Amount of Loan) (7) Make Payment (ask user for the Record# and Payment Amount) (8) Exit Extra Credit: Have options to add and delete customers. |
|
|
Customer Class |
|
|
Variable Names |
Variable Description |
|
String FName, LName |
Customer's first and last name. |
|
String Email |
Customer's e-mail address. |
|
int CustomerTransactions |
The total number of transactions (deposits and withdrawals) made by the customer. |
|
static double BankBalance |
The bank's total balance (static). You should change this variable when customers make deposits, withdrawals, take loans, and make loan payments. |
|
static int NumberCustomers |
The total number of customers at the bank (static). Increment this variable in the CheckAccount and LoanAccount constructors. |
|
CheckingAccount Class |
|
|
Variable Names |
Variable Description |
|
private double CheckingBalance |
The customer's checking account balance. |
|
Methods Names |
Methods Description |
|
CheckingAccount(String theLName, String theFName, String theEmail, double OpeningDeposit) |
The constructor should (1) initialize the name and email variables, (2) set CheckingBalance to OpeningDeposit, (3) add the OpeningDeposit to the BankBalance, (5) increment NumberCustomers. |
|
getCheckingBalance() |
The Get method is needed since CheckingBalance is Private. |
|
Deposit(Amount) |
Deposit money into the customer's account (include the amount as a parameter). Remember to increment CustomerTransactions and add Amount to BankBalance. |
|
Withdraw(Amount) |
Withdraw money from the customer's account (include the amount as a parameter). If the customer overdrafts, charge a $25 fee. Remember to increment CustomerTransactions and subtract Amount from BankBalance. |
|
LoanAccount Class |
|
|
Variable Names |
Variable Description |
|
private double LoanBalance |
The customer's remaining loan principle. |
|
Methods Names |
Methods Description |
|
LoanAccount(String theLName, String theFName, String theEmail, double OpeningLoan) |
The constructor should: (1) initialize the name and email, (2) set LoanBalance to OpeningLoan * 1.25 for a 25% interest premium, (3) subtract the OpeningLoan from BankBalance, (4) increment NumberCustomers. |
|
getLoanBalance() |
Get method since LoanBalance is private |
|
MakeLoan(Amount) |
Add this amount and a 25% interest premium to the LoanBalance. Remember to increment CustomerTransactions and subtract Amount from BankBalance. |
|
MakePayment(Amount) |
Subtract Amount from the LoanBalance. If LoanBalance <= 0, output a message (e.g. "Customer X just payed off his/her loan!"). Remember to increment CustomerTransactions and add Amount to BankBalance. |
How to Declare an ArrayList of Objects In your main program, declare two ArrayLists - one for CheckingAccount and one for LoanAccount. You can use the data below to get started. ArrayList<CheckingAccount> Check = new ArrayList<CheckingAccount>(); Check.add(new CheckingAccount("Kirk","David","[email protected]",10000.0)); Check.add(new CheckingAccount("Spock","Mister","[email protected]",500.0)); Check.add(new CheckingAccount("Scott","Hulu","[email protected]",75.0)); ArrayList<LoanAccount> Loan = new ArrayList<LoanAccount>(); Loan.add(new LoanAccount("Zeus","Apollo","[email protected]",5000)); Loan.add(new LoanAccount("Einstein","Amy","[email protected]",1000)); Loan.add(new LoanAccount("Caesar","Julie","[email protected]",500)); Printing all Accounts To print all accounts you can use a for loop to step through each ArrayList element. for (int i=0; i<Check.size(); i++) { System.out.println (i + "\t" + Check.get(i).GetLName() + ", " + Check.get(i).GetFName() + "\t" + Check.get(i).getCheckingBalance() + "\t" + Check.get(i).CustomerTransactions); } Retrieving (static) Bank Information For the static variables, remember that you can use any of the array elements and either the Check class or Loan class - they all point to the same variable. The following two lines give you the same answer:
System.out.println( Check.get(0).BankBalance ); System.out.println( Loan.get(0).BankBalance );
Example Output
|
//Option 1 to print bank information ==================================================== | Bank of Eastfield Information | | Total Bank Balance: 4075.0 | Total Bank Customers: 6 ==================================================== //Option 2 to print checking accounts ==================================================== | Checking Accounts | Rec Name Balance Transactions | ----------------------------------------- | 0 Kirk, David 10000.0 3 | 1 Spock, Mister 500.0 0 | 2 Scott, Hulu 75.0 2 //Option 3 to deposit money ==================================================== Enter checking record number: 2 Amount to deposit: 100 Scott Hulu now has $175.0 |
If not clear the screen shot is below
image1.jpeg
image2.png
image3.png
image4.png
image5.png
image6.png
- A+ Answers
- a work about econ reading summary
- A software company sells a package that retails for $99. Quantity discounts are given according to the following table: Quantity Discount 10â19...
- Shearer's HW
- Local Strategy Vs Global Strategy
- Mills Sporting Goods Store - College Accounting - Comprehensive Review Problem II - paradigm 5th edition
- HARZARDEOUS MATERIALS: Chemical Hazards
- Identify key trends, assumptions, and risks in the context of your final business model.
- OPS 571 w4 Supply chain paper
- i need help