Galileo Computing < openbook >Galileo Computing - Professionelle Bücher. Auch für Einsteiger.
Professionelle Bücher. Auch für Einsteiger.

Inhaltsverzeichnis
Vorwort
1 Java ist auch eine Sprache
2 Imperative Sprachkonzepte
3 Klassen und Objekte
4 Der Umgang mit Zeichenketten
5 Eigene Klassen schreiben
6 Exceptions
7 Äußere.innere Klassen
8 Besondere Klassen der Java SE
9 Generics<T>
10 Architektur, Design und angewandte Objektorientierung
11 Die Klassenbibliothek
12 Einführung in die nebenläufige Programmierung
13 Einführung in Datenstrukturen und Algorithmen
14 Einführung in grafische Oberflächen
15 Einführung in Dateien und Datenströme
16 Einführung in die <XML>-Verarbeitung mit Java
17 Einführung ins Datenbankmanagement mit JDBC
18 Bits und Bytes und Mathematisches
19 Die Werkzeuge des JDK
A Die Klassenbibliothek
Stichwort

Download:
- openbook, ca. 24,5 MB
- Aufgaben, ca. 1,1 MB
- Programme, ca. 12,8 MB
Buch bestellen
Ihre Meinung?

Spacer
Java ist auch eine Insel von Christian Ullenboom
Das umfassende Handbuch
Buch: Java ist auch eine Insel

Java ist auch eine Insel
Galileo Computing
1308 S., 10., aktualisierte Auflage, geb., mit DVD
ca. 49,90 Euro, ISBN 978-3-8362-1802-3
Pfeil11 Die Klassenbibliothek
Pfeil11.1 Die Java-Klassenphilosophie
Pfeil11.1.1 Übersicht über die Pakete der Standardbibliothek
Pfeil11.2 Sprachen der Länder
Pfeil11.2.1 Sprachen und Regionen über Locale-Objekte
Pfeil11.3 Die Klasse Date
Pfeil11.3.1 Objekte erzeugen und Methoden nutzen
Pfeil11.3.2 Date-Objekte sind nicht immutable
Pfeil11.4 Calendar und GregorianCalendar
Pfeil11.4.1 Die abstrakte Klasse Calendar
Pfeil11.4.2 Der gregorianische Kalender
Pfeil11.4.3 Calendar nach Date und Millisekunden fragen
Pfeil11.4.4 Abfragen und Setzen von Datumselementen über Feldbezeichner
Pfeil11.5 Klassenlader (Class Loader)
Pfeil11.5.1 Woher die kleinen Klassen kommen
Pfeil11.5.2 Setzen des Klassenpfades
Pfeil11.5.3 Die wichtigsten drei Typen von Klassenladern
Pfeil11.5.4 Die Klasse java.lang.ClassLoader *
Pfeil11.5.5 Hot Deployment mit dem URL-Classloader *
Pfeil11.5.6 Das Verzeichnis jre/lib/endorsed *
Pfeil11.6 Die Utility-Klasse System und Properties
Pfeil11.6.1 Systemeigenschaften der Java-Umgebung
Pfeil11.6.2 line.separator
Pfeil11.6.3 Eigene Properties von der Konsole aus setzen *
Pfeil11.6.4 Umgebungsvariablen des Betriebssystems *
Pfeil11.6.5 Einfache Zeitmessung und Profiling *
Pfeil11.7 Einfache Benutzereingaben
Pfeil11.7.1 Grafischer Eingabedialog über JOptionPane
Pfeil11.7.2 Geschützte Passwort-Eingaben mit der Klasse Console *
Pfeil11.8 Ausführen externer Programme *
Pfeil11.8.1 ProcessBuilder und Prozesskontrolle mit Process
Pfeil11.8.2 Einen Browser, E-Mail-Client oder Editor aufrufen
Pfeil11.9 Benutzereinstellungen *
Pfeil11.9.1 Benutzereinstellungen mit der Preferences-API
Pfeil11.9.2 Einträge einfügen, auslesen und löschen
Pfeil11.9.3 Auslesen der Daten und Schreiben in einem anderen Format
Pfeil11.9.4 Auf Ereignisse horchen
Pfeil11.9.5 Zugriff auf die gesamte Windows-Registry
Pfeil11.10 Zum Weiterlesen

Galileo Computing - Zum Seitenanfang

11.7 Einfache BenutzereingabenZur nächsten Überschrift

Ein Aufruf von System.out.println() gibt Zeichenketten auf der Konsole aus. Für den umgekehrten Weg der Benutzereingabe sind folgende Wege denkbar:

  • Statt System.out für die Ausgabe lässt sich System.in als sogenannter Eingabestrom nutzen. Der allerdings liest nur Bytes und muss für String-Eingaben etwas komfortabler zugänglich gemacht werden. Dazu dient etwa Scanner, den Kapitel 4, »Der Umgang mit Zeichenketten«, schon für die Eingabe vorgestellt hat.
  • Die Klasse Console erlaubt Ausgaben und Eingaben. Die Klasse ist nicht so nützlich, wie es auf den ersten Blick scheint, und eigentlich nur dann wirklich praktisch, wenn passwortgeschützte Eingaben nötig sind.
  • Statt der Konsole kann der Benutzer natürlich auch einen grafischen Dialog präsentiert bekommen. Java bietet eine einfache statische Methode für Standardeingaben über einen Dialog an.

Galileo Computing - Zum Seitenanfang

11.7.1 Grafischer Eingabedialog über JOptionPaneZur nächsten ÜberschriftZur vorigen Überschrift

Der Weg über die Befehlszeile ist dabei steinig, da Java eine Eingabe nicht so einfach wie eine Ausgabe vorsieht. Wer dennoch auf Benutzereingaben reagieren möchte, der kann dies über einen grafischen Eingabedialog JOptionPane realisieren:

Listing 11.10: com/tutego/insel/input/InputWithDialog.java

class InputWithDialog
{
public static void main( String[] args )
{
String s = javax.swing.JOptionPane.showInputDialog( "Wo kommst du denn wech?" );
System.out.println( "Aha, du kommst aus " + s );
System.exit( 0 ); // Exit program
}
}

Soll die Zeichenkette in eine Zahl konvertiert werden, dann können wir die statische Methode Integer.parseInt() nutzen.

Beispiel

Zeige einen Eingabedialog an, der zur Zahleneingabe auffordert. Quadriere die eingelesene Zahl, und gib sie auf dem Bildschirm aus:

String s = javax.swing.JOptionPane.showInputDialog( "Bitte Zahl eingeben" );
int i = Integer.parseInt( s );
System.out.println( i * i );

Sind Falscheingaben zu erwarten, dann sollte parseInt() in einen try-Block gesetzt werden. Bei einer unmöglichen Umwandlung, etwa wenn die Eingabe aus Buchstaben besteht, löst die Methode parseInt() eine NumberFormatException aus, die – nicht abgefangen – zum Ende des Programms führt.[180](Oder zumindest zum Ende des Threads.)

Beispiel

Es soll ein einzelnes Zeichen eingelesen werden:

String s = javax.swing.JOptionPane.showInputDialog( "Bitte Zeichen eingeben" );
char c = 0;
if ( s != null && s.length() > 0 )
c = s.charAt( 0 );

Beispiel

Ein Wahrheitswert soll eingelesen werden. Dieser Wahrheitswert soll vom Benutzer als Zeichenkette true oder false beziehungsweise als 1 oder 0 eingegeben werden:

String s = javax.swing.JOptionPane.showInputDialog(
"Bitte Wahrheitswert eingeben" );
boolean buh;

if ( s != null )

  if (s.equals("0") || s.equals("false") )
buh = false;
else if (s.equals("1") || s.equals("true") )
buh = true;

class javax.swing.JOptionPane
extends JComponent
implements Accessible
  • static String showInputDialog( Object message )
    Zeigt einen Dialog mit Texteingabezeile. Die Rückgabe ist der eingegebene String oder null, wenn der Dialog abgebrochen wurde. Der Parameter message ist in der Regel ein String.

Galileo Computing - Zum Seitenanfang

11.7.2 Geschützte Passwort-Eingaben mit der Klasse Console *Zur vorigen Überschrift

Die Klasse java.io.Console erlaubt Konsolenausgaben und -eingaben. Ausgangspunkt ist System.console(), was ein aktuelles Exemplar liefert – oder null bei einem System ohne Konsolenmöglichkeit. Das Console-Objekt ermöglicht übliche Ausgaben und Eingaben und insbesondere mit readPassword() eine Möglichkeit zur Eingabe ohne Echo der eingegebenen Zeichen.

Ein Passwort einzulesen und es auf der Konsole auszugeben, sieht so aus:

Listing 11.11: com/tutego/insel/io/PasswordFromConsole.java, main()

if ( System.console() != null )
{
String passwd = new String( System.console().readPassword() );
System.out.println( passwd );
}
final class java.lang.System
implements Flushable
  • static Console console()
    Liefert das Console-Objekt oder null, wenn es keine Konsole gibt.
final class java.io.Console
implements Flushable
  • char[] readPassword()
    Liest ein Passwort ein, wobei die eingegebenen Zeichen nicht auf der Konsole wiederholt werden.
  • Console format(String fmt, Object... args)
  • Console printf(String format, Object... args)
    Ruft String.format(fmt, args) auf und gibt den formatierten String auf der Konsole aus.
  • char[] readPassword(String fmt, Object... args)
    Gibt erst eine formatierte Meldung aus und wartet dann auf die geschützte Passworteingabe.
  • String readLine()
    Liest eine Zeile von der Konsole und gibt sie zurück.


Ihr Kommentar

Wie hat Ihnen das <openbook> gefallen? Wir freuen uns immer über Ihre freundlichen und kritischen Rückmeldungen.







<< zurück
  Zum Katalog
Zum Katalog: Java ist auch eine Insel





Java ist auch eine Insel
Jetzt bestellen


 Ihre Meinung?
Wie hat Ihnen das <openbook> gefallen?
Ihre Meinung

 Buchempfehlungen
Zum Katalog: Java 7 – Mehr als eine Insel





 Java 7 –
 Mehr als eine Insel


Zum Katalog: Android 3






 Android 3


Zum Katalog: Android-Apps entwickeln






 Android-Apps
 entwickeln


Zum Katalog: NetBeans Platform 7






 NetBeans
 Platform 7


Zum Katalog: Einstieg in Eclipse 3.7






 Einstieg in
 Eclipse 3.7


Zum Katalog: Einstieg in Java






 Einstieg
 in Java


Zum Katalog: Einstieg in Java 7






 Einstieg in
 Java 7


 Shopping
Versandkostenfrei bestellen in Deutschland und Österreich
InfoInfo




Copyright © Galileo Press 2011
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das <openbook> denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.


[Galileo Computing]

Galileo Press, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, info@galileo-press.de