Professionelle Bücher. Auch für Einsteiger.

Inhaltsverzeichnis
Vorwort
1 Java ist auch eine Sprache
2 Sprachbeschreibung
3 Klassen und Objekte
4 Der Umgang mit Zeichenketten
5 Mathematisches
6 Eigene Klassen schreiben
7 Angewandte Objektorientierung
8 Exceptions
9 Generics, innere Klassen
10 Die Klassenbibliothek
11 Threads und nebenläufige Programmierung
12 Datenstrukturen und Algorithmen
13 Raum und Zeit
14 Dateien und Datenströme
15 Die eXtensible Markup Language (XML)
16 Grafische Oberflächen mit Swing
17 Grafikprogrammierung
18 Netzwerkprogrammierung
19 Verteilte Programmierung mit RMI und Web–Services
20 JavaServer Pages und Servlets
21 Applets
22 Midlets und die Java ME
23 Datenbankmanagement mit JDBC
24 Reflection und Annotationen
25 Logging und Monitoring
26 Sicherheitskonzepte
27 Java Native Interface (JNI)
28 Dienstprogramme für die Java-Umgebung
Stichwort
Download: - ZIP, ca. 14,1 MB
Buch bestellen
Ihre Meinung?
<< zurück | Galileo Computing / <openbook> / Java-Insel | vor >>
Java ist auch eine Insel (8. Auflage) von Christian Ullenboom Programmieren mit der Java Standard Edition Version 6
Java ist auch eine Insel (8. Aufl.) 8., aktual. Auflage, geb., mit DVD 1.475 S., 49,90 Euro Galileo Computing ISBN 978-3-8362-1371-4 |
| 22 Midlets und die Java ME
|  | 22.1 Java Platform, Micro Edition (Java ME)
|  | 22.2 Konfigurationen
|  |  | 22.2.1 Connected Limited Device Configuration (CLDC)
|  |  | 22.2.2 Connected Device Configuration (CDC)
|  | 22.3 Profile
|  |  | 22.3.1 Mobile Information Device Profile (MIDP)
|  |  | 22.3.2 Weitere Profile
|  | 22.4 Wireless Toolkits
|  |  | 22.4.1 Sun Java Wireless Toolkit for CLDC
|  |  | 22.4.2 Eclipse-Plugin
|  | 22.5 Die Midlet-API
|  |  | 22.5.1 Paketstruktur Mobile Information Device Profile (2.0)
|  | 22.6 Zum Weiterlesen
## 22.5 Die Midlet-API In der Implementierung mit der Java ME und MIDP fällt eine gewisse Ähnlichkeit zu Applets auf, weshalb die Applikationen auch Midlet s heißen. Midlets haben keine main()-Funktion, sondern erben wie Applets von einer (abstrakten) Oberklasse. Die Oberklasse ist bei Applets Applet und bei Midlets javax.microedition.midlet.MIDlet. Bei beiden gibt es Callback-Methoden, die das System aufruft, wenn es die Java-Programme startet, anhält oder beendet.
Hinweis Die API-Dokumentation liegt online unter http://java.sun.com/javame/ reference/apis.jsp vor.
### 22.5.1 Paketstruktur Mobile Information Device Profile (2.0) Die Paketstruktur der Midlet-Klassen der Java ME ist relativ flach:
java.io | Ein-/Ausgabeklassen wie InputStream, OutputStream
java.lang | Kernklassen wie String, Exceptions, Errors
java.util | Date, Timer und Datenstrukturen wie Vector
javax.microedition.io | Connection-Struktur
javax.microedition.lcdui | UI-API mit Alert, List, Ticker …
javax.microedition.lcdui.game | Game-API mit Layer, Sprite
javax.microedition.media | MIDP 2.0 Media API mit Player, Control
javax.microedition.media.control | ToneControl und VolumeControl der Media-API
javax.microedition.midlet | Nur Basisklasse MIDlet und Exception
javax.microedition.pki | Nur Certificate und Exception
javax.microedition.rms | Persistenz im Record Store
Da MIDP 2.0 auf dem CLDC 1.0 aufsetzt, hat MIDP alle Typen aus CLDC. In CLDC 1.1 gibt es jedoch ein neues Paket java.lang.ref mit den Klassen Reference und WeakReference. #### Analyse vom HelloMIDlet HelloMIDlet nutzt mit TextBox eine Textkomponente der LCDUI-Bibliothek (High-Level-API). Das Display ist der Hauptschirm, der die Textkomponente darstellen soll. Ereignisse vom Gerät werden über Command-Objekte gesteuert. Der Konstruktor für Command nimmt eine Konstante für einen Schaltknopf an, ohne physikalisch genau festzulegen, wo dieser sitzt. An die Schaltfläche setzt setCommandListener() den Ereignisbehandler. Um die Anzahl der Klassen zu minimieren, implementieren Midlets-Klassen üblicherweise selbst den Listener, also CommandListener. Aus Speichergründen verzichten Entwickler gerne auf zu viele innere Klassen oder Extra-Klassen für jeden Listener. #### Record Management System (RMS) Mit dem Record Management System (RMS) lassen sich Daten in binären Tabellen speichern. Zentral ist der Typ RecordStore, mit dem Daten im RMS gespeichert und erfragt werden.
    RecordStore rs = RecordStore.openRecordStore( "tutego", false );
Speichern wir zunächst eine Anschrift:
    byte[] buffer = "Heinz Hutzelmann|Putzelweg 9|73003 Wutzelhausen".getBytes();
    int id = rs.addRecord( buffer, 0, buffer.length );
Jeder Datensatz wird mit einer ID verbunden. Mit dieser ID können wir Daten wieder aus dem Speicher holen.
    byte[] buffer2 = new byte[ 100 ];
    int bytesRead = rs.getRecord( id, buffer2, 0 );
Die Daten stehen anschließend in buffer2 und könnten wieder in den String konvertiert werden. Die Methode getRecord() kopiert so viele Bytes in den Puffer wie nötig, wobei der Puffer natürlich selbst nicht seine Länge verändert. Wie viele Daten wirklich aus dem RMS stammen, sagt daher die Rückgabe von getRecord() aus. ### Ihr Kommentar Wie hat Ihnen das <openbook> gefallen? Wir freuen uns immer über Ihre freundlichen und kritischen Rückmeldungen. >> Zum Feedback-Formular
<< zurück | <top> | vor >>
Zum Katalog
Java ist auch eine Insel Jetzt bestellen
Ihre Meinung?
Wie hat Ihnen das <openbook> gefallen? Ihre Meinung
Tipp
| Coding for Fun
Buchempfehlungen
| Objektorientierte Programmierung
| Einstieg in Eclipse 3.4
| Java 6 lernen mit Eclipse
| NetBeans Platform 6
| Java und XML
| Visual C# 2008
| IT-Handbuch für Fachinformatiker
| C++ von A bis Z
Shopping
Versandkostenfrei bestellen in Deutschland und Österreich Info

Copyright © Galileo Press 2009
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