Project 2
public class Bank {
private String bankName;
private double minBalance;
private double minInterestRate;
private double maxWithdrawalLimit;
public Bank(String bankName, double minBalance, double minInterestRate, double maxWithdrawalLimit) {
this.bankName = bankName;
this.minBalance = minBalance;
this.minInterestRate = minInterestRate;
this.maxWithdrawalLimit = maxWithdrawalLimit;
}
public void setMinBalance(double minBalance) {
this.minBalance = minBalance;
}
public void setMinInterestRate(double minInterestRate) {
this.minInterestRate = minInterestRate;
}
public void setMaxWithdrawalLimit(double maxWithdrawalLimit) {
this.maxWithdrawalLimit = maxWithdrawalLimit;
}
public String getBankName() {
return this.bankName;
}
public double getMinBalance() {
return this.minBalance;
}
public double getMinInterestRate() {
return this.minInterestRate;
}
public double getMaxWithdrawalLimit() {
return this.maxWithdrawalLimit;
}
}
public class SavingsAccount extends Bank {
private String accountNumber;
private double balance;
public SavingsAccount(String bankName, double minBalance, double minInterestRate, double maxWithdrawalLimit, String accountNumber, double balance) {
super(bankName, minBalance, minInterestRate, maxWithdrawalLimit);
this.accountNumber = accountNumber;
this.balance = balance;
}
public void deposit(double amount) {
this.balance += amount;
}
public void withdraw(double amount) {
if (amount <= getMaxWithdrawalLimit() && this.balance - amount >= getMinBalance()) {
this.balance -= amount;
} else {
System.out.println("Withdrawal limit exceeded or minimum balance not maintained");
}
}
public double calculate