Menu
Coddy logo textTech

Rückblick – Bankkontoverwaltung

Teil des Abschnitts Objektorientierte Programmierung der Java-Journey von Coddy. Lektion 14 von 87.

challenge icon

Aufgabe

Einfach

Lass uns ein vollständiges BankAccount-System erstellen, das alles zusammenführt, was du über Kapselung, Zugriffsmodifikatoren, Getter, Setter und das Schlüsselwort final gelernt hast.

Du wirst zwei Dateien erstellen, um deinen Code zu organisieren:

  • BankAccount.java: Entwirf eine sichere Bankkonto-Klasse, die sensible Finanzdaten schützt:
    • Eine unveränderliche Kontonummer, die sich nach der Erstellung des Kontos niemals ändern kann
    • Ein privates Guthaben, das bei 0.0 beginnt und nur durch kontrollierte Methoden geändert werden kann
    • Einen privaten Namen des Kontoinhabers, der abgerufen, aber nicht direkt geändert werden kann
    • Einen Konstruktor, der die Kontonummer und den Namen des Kontoinhabers entgegennimmt
    • Einen Getter für die Kontonummer
    • Einen Getter für den Namen des Kontoinhabers
    • Einen Getter für das Guthaben
    • Eine deposit(double amount)-Methode, die das Guthaben nur erhöht, wenn der Betrag positiv ist, und bei Erfolg true oder bei Ablehnung false zurückgibt
    • Eine withdraw(double amount)-Methode, die das Guthaben nur verringert, wenn der Betrag positiv ist UND ausreichende Geldmittel vorhanden sind, und bei Erfolg true oder bei Ablehnung false zurückgibt
    • Eine getAccountSummary()-Methode, die Folgendes zurückgibt: "Account [accountNumber] | Owner: [ownerName] | Balance: $[balance]" (das Guthaben auf 2 Dezimalstellen formatiert)
  • Main.java: Erstelle ein BankAccount und führe eine Reihe von Transaktionen durch. Du erhältst fünf Eingaben: Kontonummer, Name des Kontoinhabers, Einzahlungsbetrag, ersten Abhebungsbetrag und zweiten Abhebungsbetrag. Gib vier Zeilen aus:
    • Das Ergebnis der Einzahlung: Deposit: true oder Deposit: false
    • Das Ergebnis der ersten Abhebung: Withdraw 1: true oder Withdraw 1: false
    • Das Ergebnis der zweiten Abhebung: Withdraw 2: true oder Withdraw 2: false
    • Die abschließende Kontozusammenfassung

Du erhältst fünf Eingaben in dieser Reihenfolge: accountNumber (String), ownerName (String), depositAmount (double), withdrawAmount1 (double), withdrawAmount2 (double).

Um das Guthaben auf 2 Dezimalstellen zu formatieren, kannst du String.format("%.2f", balance) verwenden.

Probier es selbst

import java.util.Scanner;

class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        
        // Eingaben lesen
        String accountNumber = scanner.nextLine();
        String ownerName = scanner.nextLine();
        double depositAmount = scanner.nextDouble();
        double withdrawAmount1 = scanner.nextDouble();
        double withdrawAmount2 = scanner.nextDouble();
        
        // TODO: Erstelle ein BankAccount-Objekt mit accountNumber und ownerName
        
        // TODO: Führe die Einzahlung durch und gib das Ergebnis als "Deposit: true" oder "Deposit: false" aus
        
        // TODO: Führe die erste Abhebung durch und gib das Ergebnis als "Withdraw 1: true" oder "Withdraw 1: false" aus
        
        // TODO: Führe die zweite Abhebung durch und gib das Ergebnis als "Withdraw 2: true" oder "Withdraw 2: false" aus
        
        // TODO: Gib die Kontozusammenfassung aus
    }
}

Alle Lektionen in Objektorientierte Programmierung

Übe selbstständig: Online-Java-Compiler