package UE01_030924_Wiederholung; public class Girokonto extends Konto { String name = "undefined"; public Girokonto(String name, double betrag, double zinssatz) { super(betrag, zinssatz, "Girokonto"); if (name != null) this.name = name; } public Girokonto(String name, double zinssatz) { super(zinssatz, "Girokonto"); this.name = name; } public double einzahlung(double betrag) { if (betrag < 0) return 0; this.kontostand += betrag; this.buchungsvorgaenge.add("Einzahlung: " + betrag); return betrag; } public boolean auszahlung(double betrag) { if (this.kontostand - betrag < 0) return false; this.kontostand -= betrag; this.buchungsvorgaenge.add("Auszahlung: " + betrag); return true; } public double ueberweisung(Konto empfaenger, double betrag) { if (betrag < 0 || !auszahlung(betrag)) return 0; empfaenger.einzahlung(betrag); this.buchungsvorgaenge.add("Überweisung an " + kontonummer(empfaenger.kontonummer) + ": " + betrag); return betrag; } @Override public String toString() { return kontonummer(this.kontonummer) + " - " + this.kontoTyp + " von " + this.name + ": Zinssatz: " + this.zinssatz + "%, Kontostand: " + this.kontostand; } }