Fahrkartenautomat

Java Projekt: Fahrkartenautomat

Hier ein kleines Projekt, bei dem ich dir zeige, wie du einen Fahrkartenautomaten in Java realisieren kannst. Ich denke, der Code mit den Kommentaren sagt mehr aus, als eine ausführliche Beschreibung, hier also der Code:

//Imports
import java.util.ArrayList;
import java.util.Arrays;

//Klasse: Fahrkartenautomat
public class Fahrkartenautomat
{
    //Deklaration der Instanzvariablen
    private double fahrPreis;
    private double einwurf;
    private double gesamtEinnahmen;
    private ArrayList<Double> ticketumsaetze = new ArrayList<Double>();

    //Konstruktor
    public Fahrkartenautomat(){
        //Initialisierung der Instanzvariablen
        fahrPreis = 3.8;
        einwurf = 0.0;
        gesamtEinnahmen = 0.0;
        ticketumsaetze.clear();
    }

    //Methode zum Festlegen des Fahrpreises
    public void fahrpreisFestlegen(double Fahrpreis){
        fahrPreis = Fahrpreis;
    }

    //Methode zum Einzahlen
    public void einzahlen(double betrag){
        einwurf += betrag;
    }

    //Methode zum Drucken der Fahrkarte
    public void druckeFahrkarte(){
        System.out.println("Fahrpreis: " + fahrPreis + "€");
        System.out.println("Bereits gezahlt: " + einwurf + "€");
        if (einwurf < fahrPreis){
            System.out.println("Es fehlen noch " + (fahrPreis - einwurf) + "€.");
        } else if (einwurf == fahrPreis){
            System.out.println("Der Kauf wurde abgschlossen.");
            gesamtEinnahmen += fahrPreis;
            ticketumsaetze.add(fahrPreis);
            einwurf = 0.0;
        } else if (einwurf > fahrPreis){
            System.out.println("Der Kauf wurde abgschlossen.");
            gesamtEinnahmen += fahrPreis;
            ticketumsaetze.add(fahrPreis);
            System.out.println("Sie erhalten " + (einwurf - fahrPreis) + "€ Wechselgeld.");
            einwurf = 0.0;
        }
    }

    //Methode zum Anzeigen der Gesamteinnahmen
    public double getGesamteinnahmen(){
        return gesamtEinnahmen;
    }

    //Methode zum Abbrechen
    public void abbrechen(){
        System.out.println("Der Vorgang wird abgebrochen. Sie erhalten " + einwurf + "€ zurück.");
        einwurf = 0.0;
        fahrPreis = 0.0;
    }

    //Methode zum Ausdrucken des Ticketverlaufes
    public void ticketkaufverlaufAusdrucken(){
        System.out.println("\n--------------------------------------------");
        System.out.println("Ihre Umsätze: ");
        System.out.println("--------------------------------------------");
        for (int i = 0; i < ticketumsaetze.size(); i++){
            System.out.println("Ticketverkauf für: " + ticketumsaetze.get(i));
            System.out.println("--------------------------------------------");
        }
        System.out.println("Gesamteinnahmen bisher: " + getGesamteinnahmen() + "\n");
        System.out.println("--------------------------------------------");
    }
}

Das Projekt kannst du z.B. in BlueJ öffnen und ausführen. Hier ist der Vorteil, dass die Objekte ziemlich gut für Anfänger visualisiert sind.

Erstelle hier also als erstes Objekte für die verschiedenen Konten. Jetzt kannst du die verschiedenen Funktionen auf die Objekte anwenden. Hier ein paar Fotos dazu:

Bei Fragen oder Anregungen immer gerne einen Kommentar schreiben ;-).

Jan

Jan

Ich bin Jan und ich freue mich, dass Du meinen Blog gefunden hast. Ich blogge in meiner Freizeit über Smart Home, 3D Druck und Technik und versuche, Dir mit meinen Beiträgen möglichst gut zu helfen.

Alle Beiträge ansehen von Jan →

Hast du Fragen, Anregungen oder einen einfachen Kommentar dazu? Dann poste es hier!

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.