1
0
Fork 0
BankSystemWS23/Banksystem/src/bank/Bankkonto.java

64 lines
1.4 KiB
Java

package bank;
import java.io.Serializable;
import java.util.ArrayList;
public class Bankkonto implements Serializable {
// sog. Geheimnisprinzip, Attribute bleiben
// privat, Zugriff erfolgt nur über Methoden
private String name;
private int kontonummer;
private double kontostand;
private static int kontozähler = 0;
public Bankkonto(String name) {
this.name = name;
this.kontostand = 0;
this.kontonummer = 100000 + kontozähler++;
}
// sog. Getter-Methoden
public double getKontostand() {
return this.kontostand;
}
public int getKontonummer() {
return this.kontonummer;
}
public double geldEinzahlen(double betrag) {
kontostand += betrag;
// Speichern Methode 1: Objekt speichern -> heute nicht gängig
return kontostand;
}
public boolean geldAuszahlen(double betrag) {
if (kontostand - betrag >= 0) {
kontostand -= betrag;
return true;
}
return false;
}
// TODO
// Alle Ein- und Auszahlungen sollen mit einem
// Timestamp und dem jeweiligen Kontostand aufgelistet werden.
// Timestamp über: new Date().toString();
// Perspektivisch würden wir hier besser eine eigene
// Klasse Kontobewegungen statt String verwenden
public ArrayList<String> getKontobewegungen() {
return null;
}
@Override
public String toString() {
return "Bankkonto [name=" + name + ", kontonummer=" + kontonummer + "]";
}
}