Lernpfad GUI-Programmierung mit dem Java-Editor

2.6 GUI für andere Klassen

Eine graphische Oberfläche ist eine komfortable Schnittstelle für den Benutzer. Eine Zeit zu speichern, über Methoden zugänglich zu machen ist eine andere Aufgabe und damit nicht Bestandteil der Oberfläche(nklasse). Für unsere Aufgabenstellung wird noch eine Klasse ZEIT bzw. ein Objekt davon benötigt. Deren Attribute und Methoden zeigt das Klassendiagramm rechts. Die Bezeichner der Attribute und Methoden sind so aussagekräftig gewählt, dass sie selbsterklärend sind. Die Methoden zum Umstellen auf Sommer- bzw. Winterzeit ändern nicht nur den Wert des Attributs sommerzeit, sondern erhöhen bzw. erniedrigen die Zeit um eine Stunde.

Wer möchte kann nun die Klasse ZEIT selbst programmieren und dann in dem Ordner speichern, in dem auch die Oberflächenklasse gespeichert ist. Wer sich voll und ganz auf die Programmierung der graphischen Oberfläche konzentriern möchte, kann die Klasse ZEIT auch hier herunterladen. Wichtig ist ein Abspeichern in dem Ordner speichern, in dem auch die Oberflächenklasse gespeichert ist.

Wie kann man nun von der graphischen Oberfläche auf ein Objekt der Klasse ZEIT zugreifen? Man deklariert ein Referenzattribut vom Typ ZEIT in der Oberflächenklasse, erzeugt ein Objekt der Klasse ZEIT und weist es dem Referenzattribut zu. In der Regel wird die Objekterzeugung und Zuweisung im Konstruktor vorgenommen. Da der Javaeditor bei den anderen Referenzattriubuten dies bereits im Deklarationsbereich macht, wird der Einheitlichkeit halber analog verfahren. Damit wird folgende farblich markierte Zeile in der Oberflächenklasse ergänzt:

public class Sommerzeit extends Frame 
{
   // Anfang Attribute
   private Label ueberschrift1 = new Label();
   private Label stundenMinuten = new Label();
   private Button buttonSommerzeit = new Button(); 
   private Button buttonWinterzeit = new Button();
   private Label Ausgabe = new Label();
   private ZEIT zeit = new ZEIT();
   // Ende Attribute
   ...

Über Punktnotation kann man nun alle Methoden des Zeit-Objekts aufrufen.