forked from hummel/BankSystemWS23
64 lines
1.4 KiB
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 + "]";
|
|
}
|
|
|
|
}
|