Question
Starting out with JAVA from control structures through objects 6th edition Chapter 10 Inheritance PC 9 EXTRA REQuirements under question in Note/ May you please
Starting out with JAVA from control structures through objects 6th edition Chapter 10 Inheritance PC 9 EXTRA REQuirements under question in Note/ May you please include comments in the program so i can understand it a bit better
Question: Design an abstract class named BankAccount to hold the following data for a bank account
Balance
Number of deposits this month
Number of withdrawls
Annual interest rate
Monthly service charges
The class should also have the following methods:
Constructor: The constructor should accept arguments for the balance and annual interest rate
deposit: A method that accepts an argument for the amount of the deposit. The method should add the argument to the account balance. It should also increment the variable holiding the number of deposits.
withdraw: A method that accepts an argument for the amount of the withdrawl. The method should subtract the argument from the balance. It should also increment the variable holding the number of withdrawls.
calcInterest: A method that updates the balance by calculating the monthly interest earned by the account, and adding this interest to the balance, This is performed by the following formulas:
Monthly Interest Rate = (Annual Interest Rate / 12)
Monthly Interest = Balance * Monthly Interest Rate
Balance = Balance + Monthly Interest
monthlyProcess: A method that subtracts the monthly service charges from the balance, calls the calcInterest method, and then sets the variables that hold the number of withdrawls, number of deposits, and monthly service charges to zero.
Next design a SavingsAccount class that extends the BankAccount class. The SavingsAccount class should have a status field to represent an active or inactive account. If the balance of a savings account falls below $25, it becomes inactive, (The status field could be a boolean variable) No more withdrawls may be made until the balance is raised above $25, at which time the account becomes active again. The savings account class should have the Following methods:
withdraw: A method that determines whether the account is inactive before a withdrawl is made. (No withdrawl will be allowed if the account is not active.) A withdrawl is then made by calling the superclass version of the method.
deposit: A method that determines whether the account is inactive before a deposit is made. If the account is inactive and the deposit brings the balance above $25, the account becomes active again. A deposit is then made by calling the superclass version of the method.
monthlyProcess: Before the superclass method is called, this method checks the number of withdrawls. If the number of withdrawls for the month is more than 4, a service charge of $1 for each withdrawl above 4 is added to the superclass field that holds the monthly service charges. (Dont forget to check the account balance after the service charge is taken. If the balance falls below $25, the account becomes inactive.)
Note: Answer using everything below vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
BankAccount and SavingsAccount,chapter 10 Programming challenge 9
Write a static main method in each class that demonstrate how the classes work, incl. trying to make a withdrawal when it is not allowed.
Ignore the request for making BankAccount abstract (we are skipping that section)
Hint:follow the instructions one small step at a time (it may help to think of baby steps); if something does not pan out, go back to the last point where things worked.
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
thank you for your time so much this would be a big help, ive been having alot of problems latley trying to catch back up in my classes
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started