Hausaufgabe statt Übung am 16.6.2014 Erstellen eines Netbeans-Projektes zur Arbeit mit Listen Erstellen Sie ein neues Projekt zur Arbeit mit Listen in NetBeans (Java, Java Applikation), basierend auf den Klassen Liste und Element, die Sie aus Übung 6 kennen. Es soll eine graphische Oberfläche hinzugefügt werden, über die neue Elemente erzeugt und der Liste hinzugefügt werden können und außerdem der aktuelle Inhalt der Liste ausgegeben werden kann. Erinnerung: Beim Erstellen des neuen Projektes muss darauf geachtet werden, dass die Checkbox bei “Create Main Class” nicht angeklickt ist. Vorgehensweise beim Übernehmen der Klassen aus BlueJ Erstellen und übernehmen Sie die Klassen “Liste” und “Element” aus dem BlueJ-Projekt folgendermaßen: 1. Über das Menü “File >> New File >> Java >> Java Class” wird in NetBeans eine neue leere Klasse erzeugt. Geben Sie ihr den Namen “Liste” bzw. “Element”. 2. Lassen Sie sich dann den Quelltext der Klasse in BlueJ anzeigen. Markieren Sie ihn und übertragen Sie den Text mit copy/paste in die neue NetBeans-Klasse übertragen. Alternativ kann man sich den Quelltext auch in einem beliebigen Texteditor anzeigen lassen. Die Dateien sind Liste.java und Element.java. 3. BlueJ (bzw. der Texteditor) kann wieder geschlossen werden. 4. Die Methoden zum Einlesen eines Elementes über die Konsole und zur Ausgabe des Inhalts eines Elemente auf die Konsole können gelöscht werden. 5. Die Methoden “ausgabeElement()” und “ausgabeListe()” müssen angepasst werden, da die Methode “ausgabe()” in der Klasse Element nicht mehr existiert. Es wird die Methode “getInhalt()” verwendet. Außerdem muss die Ausgabe dann in der Klasse Oberfläche in die jTextArea-Komponente erfolgen. Deshalb müssen die Methoden in der Klasse Liste jetzt die Ausgabe als String zurückgeben. Oberfläche erstellen 6. Für die Benutzungsoberfläche brauchen Sie eine neue Klasse. Wählen Sie aus dem Menü File! New File, dann die Kategorie “Swing GUI Forms” und “JFrame Form”. 7. Überlegen Sie sich, wie eine graphische Oberfläche aussehen sollte, über die man neue Elemente erzeugen kann. Gestalten Sie diese Oberfläche. Sie könnte z.B. so aussehen: 8. Es ist sinnvoll, eine neue Liste zu erzeugen, sobald das Programm gestartet wird. Dazu brauchen Sie eine Instanzvariable für eine Liste in der Klasse Oberfläche. Diese können Sie wie gewohnt gleich unter Kopf der Klasse einfügen. private Liste meineliste; Die Anweisung zum Erstellen der Liste müssen Sie in den Konstruktor einfügen. meineliste = new Liste(); 9. Ein Button ist erforderlich, um ein neues Element einzulesen. Erzeugen Sie die Methode (über Events! Action ! Action Performed) und erzeugen Sie ein neues Element, indem Sie die Inhalte der Textfelder in variablen einlesen und den Konstruktor für das Element aufrufen. Fügen Sie das erstellte Element dann in meineliste ein. 10. Der aktuelle Inhalt der Liste soll auf der Oberfläche ausgegeben werden. Dazu eignet sich eine jTextArea. Sie können dort Ausgaben erzeugen mit setText(), wodurch immer der gesamte Bereich neu beschrieben wird textausgabe.setText("ausgegebener Inhalt"); oder mit append(), wobei die Ausgabe immer an den schon vorhandenen Inhalt angehängt wird textausgabe.append("ausgegebener Inhalt"); Hinweise: Für die primitiven Datentypen gibt es Wrapper-Klassen. Die Wrapper-Klassen (außer Character) enthalten Funktionen, um einen String in den jeweiligen primitiven Typ umzuwandeln (z.B. int - Integer.parseInt(aString) ). byte - Byte short - Short int - Integer long - Long char - Character float - Float double - Double boolean – Boolean