ITS320 weekfinal Cirtical thinking(300 points) Solution

Corrected Programs and Final Java Program #7 (300 points)
Throughout this course, you have been developing programs to learn about different features of the Java programming language. For your final Portfolio assignment:
1.Submit all completed programs, with corrections as necessary and output screen snapshots, to demonstrate that they all perform properly to meet the specifications.
2.For each program, write a short summary of the Java features that were highlighted by this program (e.g., processing user inputs, inheritance, constructor modification, GUI features, handling user events, etc.).
3.Include the complete source code listing of all classes, with any updates you made, for each program.
4.Write a short summary (2 double-spaced pages) of your experience with Java programming in this course and how you've progressed with your ability to write programs using Java. Include any lessons learned.
5.Also, there is one more program to write. It incorporates many of the concepts that were described throughout the course. Directions for this program follow the instructions for submitting the deliverables for the program below.
Submit all deliverables in a single Microsoft Word file in this order:
•Include the items below for each program and put them in the order listed:
•A screen snapshot of your Java source code (all file(s) shown separately) displayed in the IDE or Windows editor showing a successful compilation, if possible (only the beginning of the source file(s) is necessary).
•A complete listing of your entire source code file(s).
•Screen snapshots of all of your program outputs. Failure to show all of the outputs will result in lost points. In order to not confuse the grading process, and possibly lose points, do not include any other outputs aside from what is requested.
•A short summary of the new features emphasized by the program
•Following the items for all programs, write a short summary of your experience with Java programming in this course and include any lessons learned.
For your new program (step #5 above), create a class called BankAccount. The BankAccount class should contain a String to store the customer name and a double to store the account balance. The BankAccount class should have two constructors, as follows:
public BankAccount(String name, double balance)
throws NegativeAmountException
// set name and balance
// make sure balance is not negative
// throw exception if balance is negative
public BankAccount(String name)
throws NegativeAmountException
// set name and use 0 balance
As can be seen, the first constructor throws a NegativeAmountException if the balance being used to create the bank account is negative. You will have to create this exception class yourself.
The BankAccount class should also contain methods to make a deposit, make a withdrawal, get the current balance, and print a bank account statement. The interfaces for these methods should appear as follows:
// update balance by adding deposit amount
// make sure deposit amount is not negative
// throw exception if deposit is negative

public void deposit(double amount) throws NegativeAmountException
// update balance by subtracting withdrawal amount
// throw exception if funds are not sufficient
// make sure withdrawal amount is not negative
// throw NegativeAmountException if amount is negative
// throw InsufficientFundsException if balance < amount

public void withdraw(double amount)
throws InsufficientFundsException, NegativeAmountException
// return current balance

public double getBalance()
// print bank statement including customer name
// and current account balance
public void printStatement();
Use the BankAccount class as the superclass for a SavingsAccount class. In addition to the behaviors of a BankAccount, a SavingsAccount also accumulates interest; therefore, the SavingsAccount class contains a double that is populated with the current interest rate. In addition to its constructors (you decide what the constructors should be), the SavingsAccount class should contain the following methods:
// post monthly interest by multiplying current balance
// by current interest rate divided by 12 and then adding
// result to balance by making deposit

public void postInterest()
// print bank statement including customer name
// and current account balance (use printStatement from
// the BankAccount superclass)
// following this also print current interest rate

public void printStatement()
Once these two classes are completed, create a driver class called FinalExam containing a main method that tests the SavingsAccount class. Within the driver test class, create a SavingsAccount object and then use it to make deposits and withdrawals, and to post the monthly interest.
To make the program simpler, you can incorporate the initial data for the Savings Accounts directly in the program (e.g., no need to prompt for the account holder name or starting balance). The only things you need to prompt for are the deposit amount and the withdrawal amount. Also, to simplify the task, the only exceptions that you should handle are the NegativeAmountException and the InsufficientFundsException. If either of these exception conditions occurs, print an appropriate error message and terminate the application. You can simply re-throw any IOExceptions from the main.

For example, interacting with the application might produce something like the following:

This is a big project and your experience and expertise is greatly appreciated.

You have really helped me out with these assignments, LogicPro. You have scored a perfect score on all assignments.

This assignment would need to be finished by 11/22/14, sometime that day.

I need everything to be included per instructions, because I will not know what to add or do!

If you need all the previous assignments that you did for me, in regards to the instructions, please message me and I can provide those for you. You won't have to make any changes to them, because they were done correctly!

I think that is all for now!

Thanks again!
Powered by