Consider the following five classes bank account


Question: Consider the following five classes: Bank, Account, NonInterestCheckingAccount, InterestCheckingAccount, and PlatinumCheckingAccount, as well as an interface called InterestBearingAccount which interact as follows:

- A Bank stores an ArrayList that can contain accounts of all types, including savings and checking accounts, some of which are interest bearing and some of which are not. Bank contains a method called totalAssets that returns the sum of all the balances in all the accounts. It also contains a method called addInterest that invokes the addInterest method for all the accounts in the bank that are interest-bearing.

- Account is an abstract class. Each account stores the name of the account holder, an account number (sequentially assigned automatically), and the current balance, along with an appropriate constructor to initialize these data members, and methods to access the current balance, add to the current balance, and subtract from the current balance. NOTE: All these methods are implemented in the Account class, so even though Account is abstract, none of the methods that you are implementing in this class are abstract.

- The InterestBearingAccount interface declares a single method addInterest (no parameters, void return type) that increases the balance by the interest rate that is appropriate for the particular account.

- An InterestCheckingAccount is an Account that is also an InterestBearingAccount. Invoking addInterest increases the balance by 3%.

- A PlatinumCheckingAccount is an InterestCheckingAccount. Invoking addInterest increases the balance by double the rate for an InterestCheckingAccount (whatever that rate happens to be).

- A NonInterestCheckingAccount is an Account but it is not an InterestBearingAccount. It has no additional functionality beyond the basic Account class.

For this question, do the following. You do not have to provide any functionality beyond the specifications above:

a. Five of the six classes above form an inheritance hierarchy. For those five classes, draw the hierarchy. b. Implement Account.

c. Implement NonInterestCheckingAccount.

d. Write the InterestBearingAccount interface.

e. Implement Bank.

f. Implement InterestCheckingAccount.

g. Implement PlatinumCheckingAccount.

Solution Preview :

Prepared by a verified Expert
Basic Computer Science: Consider the following five classes bank account
Reference No:- TGS02457445

Now Priced at $15 (50% Discount)

Recommended (93%)

Rated (4.5/5)