Bank-Konto-Programm, Ändern Sie Die Balance
Ich versuche, das Gleichgewicht zu ändern, das Konto nach dem abheben, aber es bleibt bei 10.00 Uhr. Ich weiß nicht, wie man richtig anwenden einer Methode in SavingsAccount das wird sich ändern es. Ich habe versucht, aber keinen Erfolg gehabt.
import java.util.Date;
public class Account {
private int id;
private double balance;
private double annualInterestRate;
private Date dateCreated;
private double monthlyInterestRate;
public Account() {
id = 0;
balance = 0;
annualInterestRate = 0;
}
public Account(int iD, double balancE) {
id = iD;
balance = balancE;
}
public void setID(int iD) {
id = iD;
}
public int getID() {
return (id);
}
public void setBalance(double balancE) {
balance = balancE;
}
public double getBalance() {
return (balance);
}
public void setAnnualInterestRate(double AIR) {
annualInterestRate = AIR;
}
public double getAnnualInterestRate() {
return (annualInterestRate);
}
public void setDateCreated(Date dateCreated) {
this.dateCreated = dateCreated;
}
public double getMonthlyInterestRate() {
return ((annualInterestRate / 100) / 12);
}
public double getMonthlyInterest() {
return (balance * monthlyInterestRate);
}
public void withdraw(double ammount) {
balance = balance - ammount;
}
public void deposit(double ammount) {
balance = balance + ammount;
}
}
public class SavingsAccount extends Account {
public SavingsAccount(int iD, double balancE) {
super(iD, balancE);
}
@Override
public void withdraw(double amount) {
if (amount > getBalance()) {
System.out.println("Current Balance: " + getBalance()
+ "\nThe withdrawal cannot be made due to insufficient funds.");
}
}
}
public class Test extends Account {
public static void main(String[] args) {
SavingsAccount a1 = new SavingsAccount(1122, 10.00);
a1.withdraw(5.00);
a1.deposit(00.00);
a1.setAnnualInterestRate(4.5);
Date dat = new Date();
System.out.println("Balance: " + a1.getBalance() +
"\nMonthly Interest: " + a1.getMonthlyInterest() +
"\nDate Created: " + dat);
}
}
- Sie ändern sich nicht, den Wert von
balance
(verwenden SiesetBalance
) - Zum Beispiel, in dieser situation die balance ist 10.00 Uhr, aber nach dem ich zurücktreten 5.00 und ich nenne getBalance() sollte es werden 5,00 Euro. Aber es funktioniert nicht, es gibt 10.00 Uhr noch.
Du musst angemeldet sein, um einen Kommentar abzugeben.
versuchen:
Sollten Sie rufen setBalance am Ende zurückziehen und balance, übergeben die new balance Betrag.
In
withdraw()
Sie sind nur zu prüfen, den Zustand, in dem der Auszahlungsbetrag größer ist als die balance, und drucken Sie dann eine Nachricht. Sie müssen auch den Fall behandeln, wo es ist ein gesetzlicher Höhe zu entziehen.Müssen Sie verwenden Sie Ihre setBalance Methode in Ihrer
public void withdraw
Methode. Wie diese:Nun wird es sets, um Ihre
balance
variable Ihren neuen Wert, denn wenn Sie abheben, haben Sie diebalance-amount
Geld in Ihrem Konto.Ich erwarte, dass es hilfreich für Sie sein werden!