giroKonto

This commit is contained in:
Sage The DM 2024-11-27 14:11:59 +01:00
parent eef49943d5
commit 72f7a2e529
6 changed files with 77 additions and 32 deletions

Binary file not shown.

Binary file not shown.

View file

@ -1,16 +1,33 @@
public class App {
public static void main(String[] args) throws Exception {
// Aufgabe 1
System.out.println("Aufgabe 1: \n");
public static void main(String[] args) {
// Aufgabe 1: Konto
System.out.println("Aufgabe 1: Konto\n");
Konto konto1 = new Konto("0000000001", 1000);
System.out.println(konto1.toString());
konto1.einzahlen(500);
konto1.abheben(750);
System.out.println("\nDaten nach transaktionen: ");
System.out.println(konto1.toString());
// Create Konto object
Konto konto = new Konto("0000000001", 1000.0);
System.out.println("Initiales Konto:");
System.out.println(konto);
// Aufgabe 2
System.out.println("Aufgabe 2");
// Perform transactions
konto.einzahlen(500.0);
konto.auszahlen(750.5);
// Print final state
System.out.println("\nKonto nach Transaktionen:");
System.out.println(konto);
// Aufgabe 2: Girokonto
System.out.println("\nAufgabe 2: Girokonto\n");
// Create Girokonto object
Girokonto gk = new Girokonto("0000000001", 10000.0, 1000.0);
// Test withdrawals and deposits
gk.auszahlen(11000.0); // Should succeed
System.out.println("Kontostand: " + gk.getKontostand());
gk.einzahlen(11000.0); // Deposit
gk.auszahlen(11001.0); // Should fail (exceeds limit)
System.out.println("Kontostand: " + gk.getKontostand());
}
}

View file

@ -0,0 +1,29 @@
public class Girokonto extends Konto {
private double limit;
// Constructor
public Girokonto(String kontonummer, double kontostand, double limit) {
super(kontonummer, kontostand);
this.limit = limit;
}
// Getter for limit
public double getLimit() {
return limit;
}
// Setter for limit
public void setLimit(double limit) {
this.limit = limit;
}
// Overridden auszahlen method
@Override
public void auszahlen(double betrag) {
if (getKontostand() - betrag >= -limit) {
super.auszahlen(betrag);
} else {
System.out.println("Fehler: Kreditlimit überschritten!");
}
}
}

View file

@ -2,39 +2,38 @@ public class Konto {
private String kontonummer;
private double kontostand;
public Konto(String kontonummer, int kontostand) {
if (kontonummer.length() == 10) {
this.kontonummer = kontonummer;
this.kontostand = kontostand;
} else
System.out.println("Es ist fehler beim erstellen des Konto aufgetreten");
}
public String getKontonummer() {
return kontonummer;
// Constructor
public Konto(String kontonummer, double kontostand) {
this.kontonummer = kontonummer;
this.kontostand = kontostand;
}
// Getter for kontostand
public double getKontostand() {
return kontostand;
}
public void abheben(double betrag) {
if (kontostand >= 0) {
this.kontostand -= betrag;
} else
System.out.println("Fehlermeldung #1225");
// Getter for kontonummer
public String getKontonummer() {
return kontonummer;
}
// Method to deposit money
public void einzahlen(double betrag) {
if (kontostand >= 0) {
this.kontostand += betrag;
} else
System.out.println("Fehlermeldung #5221");
kontostand += betrag;
}
// Method to withdraw money
public void auszahlen(double betrag) {
if (kontostand >= betrag) {
kontostand -= betrag;
} else {
System.out.println("Fehler: Nicht genügend Geld auf dem Konto!");
}
}
@Override
public String toString() {
return "Konto [Kontonummer=" + kontonummer + ", Kontostand=" + kontostand + "CHF]";
return "Konto [Kontonummer=" + kontonummer + ", Kontostand=" + kontostand + "]";
}
}