Benutzer-Werkzeuge

Webseiten-Werkzeuge


info10:aufgaben:telefonansage

Telefonansage

Ein Anruf bei der HUK-Versicherung bringt folgendes Telefonmenü zum Vorschein:

Drücken Sie die 1 für Angebot, 2 für bestehender Vertrag und 3 für Schaden/weitere Themen. Drückt man dann z.B. 1 kommt das zweite Menü (KFZ, Haftpflicht, Rechtschutz, Gesundheit). Die Menüs sind wie folgt unterteilt:

1. Angebot
  1. KFZ
  2. Haftpflicht
  3. Rechtschutz
  4. Gesundheit
2. Bestehender Vertrag
  1. KFZ
  2. Haftpflicht
  3. Rechtschutz
  4. Gesundheit
3. Schaden/weitere Themen
  1. Schaden
  ansonsten bleiben Sie bitte in der Leitung.
Aufgabe
  • Erstelle ein Zustandsdiagramm
  • Erstelle die Klasse Telefonmenue und implementiere das o.g. Menü und die Untermenüs.
  • Die Telefonansage soll auf die Eingaben entsprechend reagieren und ausgeben, welche Wahl getroffen wurde.
  • Am Schluß soll beispielweise ausgegeben werden: „Sie werden zum Angebot Gesundheit weitergeleitet“.
Lösungshinweise
  • Neben der Attributliste und dem Konstruktor muss eine Methode implementiert werden, die die Ansagen des Telefonautomaten ausgibt und auch das erste Wahlmenü mit den Nummern erklärt.
  • Gibt der Benutzer etwas ein (er ruft eine Methode auf, die einen Parameter entgegen nimmt) wird der Zustand geändert.
  • Die Ausgeben Methode gibt dann je nach Zustand einen anderen Text aus.
Grafische Benutzeroberfläche

Wer das ganze gleich mit einer grafischen Benutzeroberfläche machen will, kann die folgende Klasse als erste Version nutzen. Die Klasse erzeugt einen Eingabedialog. Der Benutzer kann dann die entsprechende Nummer eingeben.

import javax.swing.*;
 
public class Telefonmenue{
    //Attributliste
 
    //Konstruktor
    public Telefonmenue(){
        System.out.println("Willkommen bei der HUK Coburg.");
        System.out.println("Drücken Sie 1. für ein neues Angebot, 2. für Bestehender Vertrag und 3. für Schaden/weitere Themen!");
        nummerEingeben();
    }
 
    //Methoden
    public void nummerEingeben(){
        //Dieser Befehl zeigt einen Eingabedialog und speichert den eingegebenen Wert im Parameter eingabe als String.
        //Dieser Wert kann dann weiterverarbeitet werden.
        String eingabe = JOptionPane.showInputDialog("1, 2 oder 3?");
 
        //Den eingegebenen Wert erstmal ausgeben
        System.out.println("Eingabe:" +eingabe);
 
        //String müssen eigentlich immer mit der equals Methode verglichen werden
        //Im Unterricht wurde das mit == gemacht.
        //Das geht nicht immer gut. Genauere Angaben findet man in der Java Docu.
        //Statt if(status=="rot") müsste es heißen:
        //if(status.equals("rot"))
        if(eingabe.equals("1")){
            System.out.println("Der Benutzer will zu 1. Neues Angebot.");
        }
    }
}
info10/aufgaben/telefonansage.txt · Zuletzt geändert: 2020/12/14 17:22 von Ulrich Schneider