Question: 9. A banking system is looking for automated solution for managing accounts and related deposit and withdrawal. The system would currently support feature of Savings

 9. A banking system is looking for automated solution for managing

accounts and related deposit and withdrawal. The system would currently support feature

9. A banking system is looking for automated solution for managing accounts and related deposit and withdrawal. The system would currently support feature of Savings Account, however, it may have more account types in future. Develop a Java project which serves this system following below guidelines. Create abstract class Account with attributes account id, customer id and abstract methods - deposit and withdraw. Create child class - SavingAccount from this abstract class. This class will implement withdraw and deposit methods where amount to be deposited should be added to the balance and amount to be withdrawn should be deducted from the balance. Withdrawal will not check for zero balance, hence balance can go in negative range. Create class Bank which has ArrayList of Account. Initialize this list in the constructor. Write below methods in Bank class: I addAccount - This method will take Account object as a parameter. It will add this object to the list if account with specific id does not exist and return true. If account with specific id already exists, it will return false. deposit - This method will take account id and deposit amount. Amount will be deposited into specific account with that id. Method will return new balance if account with that id exists, else returns - 1. withdraw - This method will take account id and withdraw amount. It will return -1 if account with specific id does not exist. Else, it will check if withdraw amount is less than or equal to existing balance. If yes, perform withdrawal and return new balance. However, if withdraw amount is greater than existing balance, then exception of class "OutOfBalanceException" should be thrown. This class is explained later. Declare class OutOfBlanceException which extends Exception class. Constructor of this class will take existing balance as first parameter and withdrawal amount as second parameter. getMessage() method should be overridden such that it returns the difference of balance - withdraw amount as a String. Outline of this class is as below: Declare a class BankDemo which has main method. Test execution as below: . . Declare Bank object. Declare three Account objects with separate account ids(Saving account objects referred by Account references).Add these objects in Bank object. Test deposit method of bank object Test withdraw method of bank object along with the case where OutOfBalanceException is thrown. Test remaining methods of Bank object. Create fourth account object with same account id matching account objects created before. . Try adding this account to Bank object

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!