Challenge 3: Implement an Account Class using Polymorphism
In this challenge, we'll implement an Account class along with two derived classes, Savings and Current.
We'll cover the following
Problem Statement
Write a code that has:
-
A parent class named
Account
.- Inside it define:
- a protected double member
balance
public void Withdraw(double amount)
public void Deposit(double amount)
public void printBalance()
- a protected double member
- Inside it define:
-
Then, there are two derived classes
Savings
class- has a private member
interestRate
set to 0.8 Withdraw(double amount)
deducts amount from balance with interestRateDeposit(double amount)
adds amount in balance with interestRateprintBalance()
displays the balance in the account
- has a private member
Current
classWithdraw(double amount)
deducts amount from balanceDeposit(double amount)
adds amount in balanceprintBalance()
displays the balance in the account
Input
- In the
Savings
class,balance
is set to 50000 in the parametrized constructor - In the
Current
class,balance
is set to 50000 in the parametrized constructor
Output
Balance before withdrawing from the savings account Balance after withdrawing from the savings account
Balance before withdrawing from the current account Balance after withdrawing from the current account
Sample Input
// creating savings account object
Account SAccount = new Savings(50000);
SAccount.Deposit(1000);
SAccount.printBalance();
SAccount.Withdraw(3000);
SAccount.printBalance();
System.out.println();
// creating current account object
Account CAccount = new Current(50000);
CAccount.Deposit(1000);
CAccount.printBalance();
CAccount.Withdraw(3000);
CAccount.printBalance();
Sample Output
Balance in your saving account: 51800.0
Balance in your saving account: 46400.0
Balance in your current account: 51000.0
Balance in your current account: 48000.0
Get hands-on with 1400+ tech skills courses.