Um den großen Umfang an Funktionalität und Plattformunabhängigkeit zur Verfügung zu stellen (welchen die Sprache nun einmal hat), haben die Entwickler viele Dinge abstrahiert. Diese wurden daraufhin in so allgemeiner Form implementiert, dass insbesondere Anfänger große Schwierigkeiten haben, sie zu benutzen. Leider ist die Eingabe eine davon.
Java erhält Eingaben von Daten über sogenannte Ströme
(engl.: streams). Man kann sich diese Ströme am besten wie
einen altmodischen Nachrichtenticker vorstellen. Auf einem schmalen Streifen
kommen Nachrichten an, Zeichen für Zeichen aneinandergereiht. Welche
Daten
und Informationen auf diesen Streifen stehen, ist dem Gerät dabei
egal - es handelt sich nur um eine Ansammlung von Zeichen. Es obliegt dem
Leser, die Streifen an der richtigen Stelle abzureißen und die Daten
auf dem Streifen zu interpretieren.
So oder so ähnlich können wir uns auch die Ströme in Java veranschaulichen. Ein Strom besteht aus nichts weiter als einer Ansammlung von Bits, die durch das Programm in irgendeiner Form interpretiert werden müssen. Hierbei kann die Quelle dieser Zeichen verschieden sein: eine Datei auf der Festplatte, ein Dokument aus dem Internet, oder eben die Eingabe von der Tastatur. Die Methodenaufrufe, welche dem Benutzer zur Verfügung stehen, sind in allen Fällen gleich.
Haben wir es jedoch geschafft dem Computer klarzumachen, dass wir als Eingabestrom die Tastatur verwenden wollen, so sind wir damit noch lange nicht am Ziel. Das Beste, was wir dem PC mit den vordefinierten Methoden nämlich entlocken können, ist eine Kette von Zeichen - ein String. Wir wollen im allgemeinen jedoch keine Strings, sondern int-Werte, double-Zahlen oder eventuell einzelne Zeichen. Zwar gibt es Möglichkeiten, aus unserem String diese zu extrahieren; hierfür brauchen wir jedoch meistens Wissen, das über das eines Anfängers hinausgeht. Um dem Abhilfe zu schaffen, wurden die IOTools geschrieben.
Besorgen Sie sich die Datei Prog1Tools.zip und speichern Sie sie auf Ihrer Festplatte. Schreiben Sie sich auch diesen Pfad auf. Wir gehen einmal davon aus, dass die Position der zip-Datei
c:\programme\java\other\Prog1Tools.zipfür Windows und
~/java/other/Prog1Tools.zipfür Linux/Unix ist.
Das weitere Vorgehen bei der Installation ist abhängig vom verwendeten Betriebssystem und von eventuell verwendeten Editoren bzw. Entwicklungsumgebungen für Java.
set CLASSPATH=.;c:\programme\java\other\Prog1Tools.zip;ein. Beachten Sie unbedingt den Punkt (.) nach dem Gleichheitszeichen!
Nun (genauer gesagt, nach dem Ausführen obiger Befehls-Zeile beim nächsten Neustart Ihres Rechners) können Sie in einem Konsolenfenster wie gewohnt mit javac kompilieren, ohne auf spezielle Parameter achten zu müssen.
Fügen Sie die Variable
Name der Variablen: CLASSPATH
Wert der Variablen: .;c:\programme\java\other\Prog1Tools.zipein. Beachten Sie unbedingt den Punkt (.) zu Beginn der Zeile Wert der Variablen!
Nun können Sie in einem Konsolenfenster wie gewohnt mit javac kompilieren, ohne auf spezielle Parameter achten zu müssen.
CLASSPATH=.:~/java/other/Prog1Tools.zip:$CLASSPATH; export CLASSPATHAnmerkung: Wenn Sie als Shell die C-Shell (csh oder tcsh) verwenden, müssen in die Datei ~/.cshrc die Zeilen
set CLASSPATH = ( $CLASSPATH . ) set CLASSPATH = ( $CLASSPATH ~/java/other/Prog1Tools.zip )eingefügt werden.
Nun (genauer gesagt, nach dem Ausführen obiger Befehls-Zeile beim nächsten Login) können Sie in einem neuen Konsolenfenster wie gewohnt mit javac kompilieren, ohne auf spezielle Parameter achten zu müssen.
Systemordner:Systemerweiterungen:MRJ Libraries:MRJClasses:legen.
Unter Mac-OS X, das auf Unix bzw. Linux basiert, kann wie unter 2.4 beschrieben vorgegangen werden.
In Eclipse gehen Sie wie folgt vor:
Im Menüpunkt Window dessen Unterpunkt Preferences wählen. Im Preferences Fenster den Eintrag Java und dessen Unter-Eintrag Installed JREs aufklappen (z. B. durch Doppelklick mit der linken Maustatste). Danach mit der rechten Maustaste einmal auf den angehakten JRE-Eintrag klicken. Mit der linken Maustaste auf den Button Edit drücken. Es erscheint ein Kontext-Menü. Dort den Button Add External JARs klicken und die Datei Prog1Tools.zip, alsoIm Java-Editor können sie diese Einstellungen wie folgt verändern:c:\programme\java\other\Prog1Tools.zipauf Ihrem Rechner suchen und selektieren. Diese erscheint jetzt als Untereintrag der JRE system libraries. Danach zweimal den OK-Button klicken.Achtung! In neueren Eclipse-Versionen meldet der Compiler trotz korrekter Einbindung der Prog1Tools teilweise Fehler der Art "Access restrictions: The type IOTools is not accessible due to restriction ...". Dies lässt sich beseitigen, wenn man im Menüpunkt Window dessen Unterpunkt Preferences wählt und im Preferences Fenster den Eintrag Java und dessen Unter-Eintrag Compiler und Errors/Warnings aufklappt. Dort ist lediglich in den Einstellungen Deprecated and restricted API bei Forbidden reference (access rules) der Schalter von Error auf Warning oder Ignore umzustellen.
Im Menüpunkt Fenster und dessen Unterpunkt Konfiguration finden Sie im Zweig Java - Interpreter den Eintrag Classpath-User, dort müssen Sie den Pfad zu den Prog1Tools auf Ihrem Rechner eintragen, alsoIm JOE (Java Oriented Editor) können sie diese Einstellungen wie folgt verändern:.;c:\programme\java\other\Prog1Tools.zipBeachten Sie auch hier unbedingt den Punkt (.) zu Beginn des Eintrags.
Im Menüpunkt Optionen und dessen Unterpunkt Einstellungen finden Sie unter Java JDK den Eintrag Zusätzlicher Klassenpfad, dort müssen Sie den Pfad zu den Prog1Tools auf Ihrem Rechner eintragen, alsoIm JBuilder können sie diese Einstellungen wie folgt verändern:.;c:\programme\java\other\Prog1Tools.zipBeachten Sie auch hier unbedingt den Punkt (.) zu Beginn des Eintrags.
Im Menüpunkt Tools den Eintrag JDKs konfigurieren wählen. Dort müssen dann den Knopf Hinzufügen drücken, um ein neues Paket (nämlich die Prog1Tools) hinzuzufügen. die Datei Prog1Tools.zip, alsoFür andere Editoren/Entwicklungsumgebungen müssen Sie analoge Einstellungen vornehmen.c:\programme\java\other\Prog1Tools.zipauf Ihrem Rechner suchen und selektieren. OK klicken, das neue Paket erscheint in der Liste der Klassen-Libraries (letzter Eintrag). Danach nochmals OK klicken.
import Prog1Tools.IOTools;einfügen.
Folgende Methoden sind dadurch unter anderem bereitgestellt:
int a = IOTools.readInteger(); int b = IOTools.readInteger();
double a = IOTools.readDouble(); double b = IOTools.readDouble();
Dies ist eine schoene Zeile
IOTools.readChar(); char a=IOTools.readChar(); int b=IOTools.readInteger();
Ich gebe jetzt einmal 13 ein.als Ergebnis den Wert 13 zurückgeben, da dies die erste gültige Ganzzahl ist. Die zuvor stehenden Textworte werden verworfen. Die Gesamt-Dokumentation der Klasse IOTools und den weiteren Klassen des Pakets Prog1Tools findet sich in der zugehörigen API-Sepzifkation.
Letzte Änderung: 7.1.2010 (D. Ratz)