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 getKontobewegungen() { return null; } @Override public String toString() { return "Bankkonto [name=" + name + ", kontonummer=" + kontonummer + "]"; } }