29.01.2014 Aufrufe

Script Java

Script Java

Script Java

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

9.1 Interfaces und Adapter-Klassen<br />

private boolean isEqual(char x, char y) {<br />

return Character.toLowerCase(x) == Character.toLowerCase(y);<br />

}<br />

Damit dieser Vergleich unabhängig von Gross- oder Kleinschreibung ist, verwendet sie die<br />

Methode toLowerCase(), welche den übergebenen Buchstaben in einen<br />

Kleinbuchstaben umwandelt.<br />

Die Instanzvariable userFrame referenziert die graphische Benutzeroberfläche, also den<br />

UserFrame. Hierbei ist zu beachten, dass sie vom Typ des Interface WordInterface<br />

deklariert wurde. Aufgrund dieser Deklaration ist es auch möglich, der Variablen<br />

userFrame eine Instanz einer anderen Klasse, welche das Interface WordInterface<br />

implementiert, zuzuweisen. Dies illustriert die Flexibilität, welche die Verwendung eines<br />

Interface bietet: ungeachtet von der Vererbungshierarchie kann man ein Protokoll<br />

bestimmen, welches zur gegenseitigen Kommunikation mehrerer Klassen dient. Daher<br />

auch der Name Interface (dt. Schnittstelle).<br />

Ein Adapter wird auf die gleiche Weise wie ein Interface registriert. In der Methode<br />

actionPerformed()der Klasse UserFrame geschieht dies in der Zeile<br />

addKeyListener(wordManager = new WordManager(this));<br />

Da man aber nicht will, dass die eingegebenen Zeichen mit dem zu erratenden Wort des<br />

vorhergehenden Durchgangs verglichen werden, wenn der Benutzer ein neues Wort<br />

eingibt, muss der KeyListener vorübergehend „taub“ gemacht werden.<br />

removeKeyListener(wordManager); 1<br />

Siehe auch: 5.1.2.1, 9.1.2.2<br />

9.1.2 Syntax<br />

9.1.2.1 Interfaces<br />

Ein Interface ist ein komplexer Datentyp, dessen Methoden allesamt abstrakt sind und der,<br />

falls er Attribute hat, nur Konstanten aufweist. Er wird mit dem Schlüsselwort<br />

interface deklariert.<br />

1 Leider ist für dieses Programm die Portabilität nicht vollständig gewährleistet. So hat sich gezeigt, dass<br />

man für einen Windows-PC den Listener beim TextField text registrieren bzw. dort auch deaktivieren<br />

muss.<br />

219

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!