Klasse, die von der Fensterklasse JFrame abgeleitet ist

Werbung
Java Grundlagen
Der einfachste Aufbau einer Klasse (kompilierbar)
Klasse, die von der Fensterklasse JFrame abgeleitet ist
Die Klasse MeinFenster erbt damit alle Eigenschaften der Klasse JFrame. Die Klasse JFrame befindet
sich im Paket javax.swing und muss mit Hilfe des Befehls import importiert werden.
Vollständiges Programm, das ein Fenster öffnet, das jedoch nur in BlueJ
gestartet werden kann
In der Klasse MeinFenster ist eine sogenannte Methode enthalten. Diese Methode trägt den Namen
MeinFenster und damit den gleichen Namen wie die Klasse. Eine solche Methode nennt man auch
Konstruktor. Ein Konstruktor wird aufgerufen, wenn ein Objekt von einer Klasse erzeugt wird. Diese
geschieht jedoch noch nicht in diesem Programm von selbst, sondern man muss dies in der
Programmierumgebung BlueJ von Hand erledigen mit dem Menübefehl new MeinFenster().
In der Konstruktormethode werden drei Methoden aufgerufen, die in der Klasse JFrame definiert
sind:



public void setBounds(int x,int y,int width, int height) – Methode, die die Koordinaten der
linken oberen Ecke des Fensters auf dem Bildschirm festlegt und die Breite und Höhe des
Fensters.
public void setTitle(String title) – Methode, die den Fenstertitel festlegt.
public void setVisible(boolean value) – Methode, die das Fenster sichtbar macht.
Standardmäßig ist es zunächst unsichtbar!
Vollständiges Programm, das ein Fenster öffnet, das auch unter Windows
gestartet werden könnte
Die Klasse MeinFenster besitzt eine weitere Methode mit dem „Methodenkopf“
public static void main(String[] args).
Diese Methode kann vom Betriebssystem aufgerufen werden, um das Programm zu starten, d.h. dass
eine Klasse eine solche Methode besitzen muss, damit sie vom Betriebssystem startbar ist.
Der Methodenkopf besteht aus folgenden Teilen:
 public : Zugriffsmodifikator, der angibt, dass die Methode von außerhalb der Klasse
aufgerufen werden darf
 static: bedeutet, dass die Methode verwendbar ist, auch wenn von der Klasse kein Objekt
erzeugt wurde.
 void: bedeutet, dass die Methode keinen Rückgabewert besitzt.
 main: Name der Methode
 String[] args: Der Methode kann ein Array mit dem Feldtyp String übergeben werden.
Innerhalb der Methode wird ein Objekt der Klasse MeinFenster erzeugt.
Programmierung einer Stoppuhr- Ein Anfang
Diese Programm startet ein Fenster, das einen Button enthält, mit dem man das Programm beenden
kann und ein Label, also einen Text mit dem Inhalt „00:00“. Dieses Label soll später einmal die
laufende Zeit anzeigen. In Zeile 9 und 10 erkennt man die Deklaration der Klassenvariablen JButton
bExit und JLabel lZeit . Diese Variablen heißen auch Referenzvariablen, da sie auf Objekte der Klassen
JButton bzw. JLabel zeigen können. Anders gesagt: man kann über diese Variablen auf die Objekte
zugreifen.
Das Objekt wird in Zeile 16 mit dem Befehl new JButton(“Beenden“) erzeugt. Der sogenannte newOperator ruft dabei die Konstruktor-Methode JButton der Klasse JButton auf und übergibt ihr bei der
Gelegenheit gleich den Text, der auf dem Button stehen soll (“Beenden“). Der Ausdruck new
JButton(“Beenden“) gibt jedoch eine Referenz auf das neu erzeugte Objekt zurück, die dann in der
Referenzvariablen bExit gespeichert wird. Man kann nun auf den Button über die Variable bExit
zugreifen.
Als nächstes muss noch definiert werden, was passieren soll, wenn der Button gedrückt wird. Dazu
fügt man einen sogenannten ActionListener hinzu. Ein ActionListener ist etwas, das „lauscht“, ob mit
dem Button etwas passiert. Wenn dies der Fall ist, wird die Methode actionPerformed aufgerufen.
Diese Methode ist in der Klasse ActionListener implementiert. In dieser Methode wird der Befehl
System.exit(0) aufgerufen, der das Programm mit dem Exitcode 0 beendet, was so viel bedeutet wie
„Programm fehlerfrei beendet“.
In Zeile 22 wird der neu erzeugt Button dem Fenster hinzugefügt.
AUFGABEN
1. Wozu sind die Anweisungen in den Zeilen 9 und 10 gut? Du kannst sie auskommentieren,
indem zu die Zeichen // vor die Befehle stellst. Dann werden die Zeilen vom Compiler als
Kommentar gesehen und bleiben unberücksichtigt. Was sagt der Compiler dann?
2. Finde heraus, was die Befehle in den Zeilen 15 und 23/24 bewirken.
3. Ändere den Quelltext so, dass zwei weitere Button mit den Aufschriften „Start/Stopp“ und
„Zwischenzeit/Reset“ im Fenster erscheinen
Herunterladen