1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
|
<html>
<head>
<title>
Handbuch der Java-Programmierung, 5. Auflage
</title>
</head>
<body>
<a name="startofbody"></a>
<script language="JavaScript" src="hjp4lib.js">
</script>
<script language="JavaScript">
installKbdHandler("97,#startofbody;101,#endofbody;116,cover.html;122,k100003.html;115,search.html;105,index.html;100,JDKDOCS;112,APIDOCS;104,k100018.html;106,k100018.html;107,k100020.html;108,k100022.html");
</script>
<table border=0 cellpadding=0 cellspacing=1 width="100%">
<tr bgcolor="#EEFFCC">
<td width="7%" align=center bgcolor="#DDCC99"><a href="cover.html"> Titel </a>
<td width="7%" align=center bgcolor="#DDCC99"><a href="k100003.html"> Inhalt </a>
<td width="7%" align=center bgcolor="#DDCC99"><a href="search.html"> Suchen </a>
<td width="7%" align=center bgcolor="#DDCC99"><a href="index.html"> Index </a>
<td width="7%" align=center bgcolor="#DDCC99"><a href="../jdkdocs/index.html" onClick="this.href=getDocIndex()"> DOC </a>
<td align="right">Handbuch der Java-Programmierung, 5. Auflage
<tr bgcolor="#EEFFCC">
<td width="7%" align=center bgcolor="#DDCC99"><a href="k100018.html"> << </a>
<td width="7%" align=center bgcolor="#DDCC99"><a href="k100018.html"> < </a>
<td width="7%" align=center bgcolor="#DDCC99"><a href="k100020.html"> > </a>
<td width="7%" align=center bgcolor="#DDCC99"><a href="k100022.html"> >> </a>
<td width="7%" align=center bgcolor="#DDCC99"><a href="../jdkdocs/api/index.html" onClick="this.href=getApiIndex()"> API </a>
<td align="right">Kapitel 3 - Wie geht es weiter?
</table>
<hr>
<!-- Section -->
<a name="sectlevel2id003001"></a>
<h2>3.1 Wie sollte man dieses Buch lesen? </h2>
<hr>
<ul>
<li><a href="k100019.html#sectlevel2id003001">3.1 Wie sollte man dieses Buch lesen?</a>
<ul>
<li><a href="k100019.html#sectlevel3id003001001">3.1.1 Zu welchem Typ Leser gehören Sie?</a>
<li><a href="k100019.html#sectlevel3id003001002">3.1.2 Was ist der Inhalt der einzelnen Kapitel?</a>
<li><a href="k100019.html#sectlevel3id003001003">3.1.3 Wie geht es nun weiter?</a>
</ul>
</ul>
<hr>
<!-- Section -->
<a name="sectlevel3id003001001"></a>
<h3>3.1.1 Zu welchem Typ Leser gehören Sie? </h3>
<p>
Sie haben nun einen ersten Eindruck von Java gewonnen und wollen Ihr
Wissen vervollständigen. Natürlich können Sie das Buch
einfach Seite für Seite weiterlesen und dabei die Sprache Java
und den Umgang mit ihrer umfassenden Klassenbibliothek erlernen. Vielleicht
wollen Sie aber gar nicht bis <a href="k100248.html#kapitelapplets1">Kapitel 39</a>
warten, um zu erfahren, wie man ein Applet schreibt? Vermutlich wollen
Sie auch nicht bis <a href="k100317.html#kapitelwerkzeuge">Kapitel 51</a>
warten, um den Umgang mit dem Debugger kennenzulernen? Auch kann es
sein, dass Sie nicht an der Dateiein-/-ausgabe interessiert sind und
die <a href="k100120.html#kapitelcharacterstreams">Kapitel 18</a>,
<a href="k100125.html#kapitelbytestreams">19</a> und <a href="k100130.html#kapitelrandomaccessio">20</a>
daher zunächst überspringen wollen. Je nach Ihren Vorkenntnissen
und Absichten wird eine ganz bestimmte Vorgehensweise sinnvoll sein.
Wir wollen in den nächsten Abschnitten ein paar Tipps zum Lesen
des Buchs und einige Hinweise zum Inhalt der einzelnen Kapitel geben.
<p>
Falls Sie zu dem Leserkreis gehören, der bereits einige Erfahrungen
mit der Entwicklung von Programmen in einer konventionellen Hochsprache
wie Pascal oder C hat, und Sie dieses Buch vor allem lesen, um auf
den Java-Zug aufzuspringen, sind Sie hier goldrichtig. Lesen Sie das
Buch einfach von vorne nach hinten und lernen Sie in jedem Kapitel
ein wenig dazu. Einige Dinge - insbesondere in den vorderen Kapiteln
- werden Ihnen vertraut vorkommen. Aber bereits ab <a href="k100046.html#kapiteloop1">Kapitel 7</a>
werden Sie mit vielen Neuigkeiten konfrontiert, die den Reiz der Sprache
ausmachen. Lesen Sie das Buch in aller Ruhe, nehmen Sie sich Zeit,
die Beispiele nachzuvollziehen, und machen Sie eigene Experimente.
Einige der Kapitel behandeln Spezialthemen, die nicht von jedem benötigt
werden, und können beim ersten Lesen übersprungen werden.
Sie werden am Ende des Buchs ein sicheres Verständnis für
alle grundlegenden Belange der Java-Programmierung haben und können
sich leicht in komplexere Themengebiete einarbeiten.
<p>
Falls Sie bereits weitreichende Programmiererfahrung in einer objektorientierten
Sprache wie C++ oder SmallTalk haben, werden Sie sich am Anfang unterfordert
fühlen. Die in <a href="k100022.html#kapiteldatentypen">Kapitel 4</a>
bis <a href="k100040.html#kapitelanweisungen">Kapitel 6</a> eingeführten
Grundlagen kommen Ihnen bekannt vor, die ab <a href="k100046.html#kapiteloop1">Kapitel 7</a>
behandelte objektorientierte Programmierung kennen Sie im Schlaf,
und die in <a href="k100083.html#progstrukturierung">Kapitel 13</a>
vorgestellten Techniken zur Entwicklung größerer Programme
sind ebenfalls nichts Neues für Sie. Aber kennen Sie sich auch
mit Multithreading, Kryptographie, dem Abstract Windowing Toolkit
und den Java Foundation Classes aus? Wissen Sie, wie grafische Animationen
entwickelt werden, wie man Objekte im Netz verteilt oder auf SQL-Datenbanken
zugreift? Kennen Sie Java-Konzepte wie Serialisierung, Reflection
oder Beans? Wenn nicht, dann werden auch Sie in diesem Buch interessante
und wissenswerte Neuigkeiten finden.
<p>
Falls Sie zu dem Leserkreis gehören, der hauptsächlich Applets
entwickeln will, verspüren Sie wahrscheinlich keine Lust, viele
Kapitel darauf zu warten, das erste Applet vorgesetzt zu bekommen.
Natürlich müssen Sie die Grundlagen der Sprache kennen,
um Applets entwickeln zu können. Es spricht aber nichts dagegen,
dass Sie sich bereits während der Lektüre der Grafikgrundlagen
in den Kapiteln <a href="k100150.html#kapitelgrafikausgabe">23</a>
bis <a href="k100184.html#kapitellowlevelevents">29</a> mit der Applet-Programmierung,
die in <a href="k100248.html#kapitelapplets1">Kapitel 39</a> und <a href="k100254.html#kapitelapplets2">40</a>
beschrieben wird, vertraut machen. Die Unterschiede zwischen Applikationen
und Applets halten sich in Grenzen, und sie werden genau erklärt.
<p>
Auch wenn Sie zu dem Typ Leser gehören, der Bücher nie am
Stück liest, sondern nur dann zur Hand nimmt, wenn er nach einer
Lösung für ein spezielles Problem sucht, kann dieses Buch
für Sie nützlich sein. Die Gliederung erleichtert auch das
Wiederfinden spezieller Themen. Verwenden Sie einfach das Inhaltsverzeichnis
oder den umfassenden Index, um das Thema zu finden, an dem Sie gerade
besonders interessiert sind. Zögern Sie nicht, die Beispielprogramme
in die Tat umzusetzen und eigene Experimente durchzuführen. Es
gibt viele Leser, die auf diese Weise am besten lernen.
<p>
Wenn Sie dagegen überhaupt keine Programmiererfahrung haben,
wird die Lektüre des Buchs nicht einfach werden. An vielen Stellen
werden Grundkenntnisse in Datenstrukturen, Algorithmen und der Entwicklung
von Computerprogrammen vorausgesetzt. Die Kapitel mit den fortgeschrittenen
Themen setzen darüber hinaus ein gutes Verständnis der einführenden
Kapitel voraus. Sollten Ihnen diese Kenntnisse fehlen, versuchen Sie
unbedingt, sie sich anzueignen. In <a href="k100020.html#wiehilfeerhalten">Abschnitt 3.2</a>
finden Sie Hinweise auf weiterführende Dokumentationen und Online-Ressourcen,
die Ihnen dabei helfen können.
<p>
<table border=0 cellspacing=0 cellpadding=0 width=100%>
<tr>
<td width=1 align=left valign=top bgcolor="#CC0000"><img src="trp1_1.gif"></td>
<td><img src="trp1_1.gif" width=1></td>
<td width=1 align=left valign=top bgcolor="#CC0000"><img src="trp1_1.gif"></td>
<td><img src="trp1_1.gif" width=2></td>
<td valign=top width=1000>
<p>
Einigen Zuschriften entnahm ich, dass es den Lesern mitunter an elementaren
Grundkenntnissen im Umgang mit dem Computer und seinem Betriebssystem
mangelt. Die Leser dieser Gruppe sind dann gleich zu Beginn frustriert,
weil etwa die Installation des JDK nicht klappt, der PATH nicht gesetzt
wurde oder sie noch nie einen Editor gesehen haben. Falls Sie zu dieser
Gruppe gehören, sollten Sie sich das fehlende Wissen unbedingt
aneignen, sonst sind Misserfolgserlebnisse vorprogrammiert. In <a href="k100016.html#troubleshooting">Abschnitt 2.3.7</a>
werden einige Hinweise zu diesen elementaren Themen gegeben, aber
ausreichend ist das nur, wenn schon gewisse Grundkenntnisse vorhanden
sind.</td>
<td><img src="trp1_1.gif" width=2></td>
<td valign=top>
<table border=0 cellspacing=0 cellpadding=1 width=100% bgcolor="#CC0000">
<tr>
<td><font color="#FFFFFF"> Warnung </font></td>
</tr>
</table>
</td>
<td width=1 align=left valign=top bgcolor="#CC0000"><img src="trp1_1.gif"></td>
</tr>
</table>
<p>
<table border=0 cellspacing=0 cellpadding=0 width=100%>
<tr>
<td width=1 align=left valign=top bgcolor="#000077"><img src="trp1_1.gif"></td>
<td><img src="trp1_1.gif" width=2></td>
<td valign=top width=1000>
<p>
Dieses Buch enthält an vielen Stellen Vorwärtsverweise auf
Themen, die noch nicht behandelt wurden. Dadurch wird den Verflechtungen
innerhalb der Themenbereiche Rechnung getragen, und man findet beim
Nachschlagen schnell alle relevanten Textstellen. Wenn Sie beim Lesen
auf einen Vorwärtsverweis stoßen, können Sie normalerweise
zunächst warten, bis die Erklärung nachgereicht wird (oftmals
schon kurze Zeit später). Sie können den Begriff natürlich
auch sofort nachschlagen, aber aus didaktischen Gründen ist das
meist nicht unbedingt notwendig.</td>
<td><img src="trp1_1.gif" width=2></td>
<td valign=top>
<table border=0 cellspacing=0 cellpadding=1 width=100% bgcolor="#000077">
<tr>
<td><font color="#FFFFFF"> Hinweis </font></td>
</tr>
</table>
</td>
<td width=1 align=left valign=top bgcolor="#000077"><img src="trp1_1.gif"></td>
</tr>
</table>
<!-- Section -->
<a name="sectlevel3id003001002"></a>
<h3>3.1.2 Was ist der Inhalt der einzelnen Kapitel? </h3>
<p>
Die Kapitel <a href="k100008.html#kapitelintro">1</a> und <a href="k100013.html#kapitelschnelleinstieg">2</a>
haben Sie bereits gelesen, Sie kennen also die wichtigsten Schlagworte
zu Java und haben ein lauffähiges Entwicklungssystem. In diesem
Kapitel erhalten Sie Informationen zum Inhalt des Buchs und bekommen
Tipps, wie Sie es am besten verwenden können. Auch Hinweise auf
weiterführende Informationen finden Sie hier.
<p>
Die Kapitel <a href="k100022.html#kapiteldatentypen">4</a>, <a href="k100030.html#kapitelausdruecke">5</a>
und <a href="k100040.html#kapitelanweisungen">6</a> beschäftigen
sich mit den elementaren Eigenschaften der Sprache. Sie erklären
die lexikalische Struktur von Java-Programmen und stellen Datentypen,
Ausdrücke und Anweisungen vor. Wenn Sie bereits mit C oder C++
vertraut sind, werden Ihnen viele Dinge bekannt vorkommen. Dennoch
gibt es einige elementare, aber wichtige Unterschiede, und auch als
erfahrener C/C++-Programmierer sollten Sie nicht vollständig
auf die Lektüre dieser Kapitel verzichten.
<p>
<a href="k100046.html#kapiteloop1">Kapitel 7</a> erklärt wichtige
Grundlagen der objektorientierten Programmierung und erläutert
Klassen und Objekte in Java. Auch die Definition und Verwendung von
Methoden werden in diesem Kapitel behandelt. <a href="k100051.html#kapiteloop2">Kapitel 8</a>
ist ebenfalls essentiell. Es beschreibt die Prinzipien der Vererbung,
erläutert Attribute von Klassen und erklärt statische Membervariablen
und Methoden. Schließlich werden abstrakte Klassen und Polymorphismus
behandelt. Zu den wichtigsten Techniken der objektorientierten Programmierung
in Java gehören Interfaces, die in <a href="k100057.html#kapiteloop3">Kapitel 9</a>
beschrieben werden. Mit der Vorstellung einiger weiterführender
Themen bildet <a href="k100064.html#kapiteloop4">Kapitel 10</a> den
Abschluss der objektorientierten Programmierung. Während lokale
und anonyme Klassen ebenso wie Wrapper-Klassen zum Handwerkszeug jedes
Java-Programmierers gehören sollten, ist der ausführliche
Teil über Design-Patterns optional und kann beim ersten Lesen
ausgelassen werden.
<p>
Im nächsten Teil des Buchs werden weiterführende Spracheigenschaften
und Grundlagen der Klassenbibliothek behandelt. Die Kapitel <a href="k100070.html#kapitelstrings">11</a>
bis <a href="k100114.html#kapitelutilities2">17</a> sind ebenso wichtig
wie die Grundlagen der Sprache. Sie behandeln Strings, Exceptions
und Packages, erklären die Collections und stellen die wichtigsten
Utility-Klassen vor. Einzig <a href="k100097.html#kapitelcollections2">Kapitel 15</a>
könnte beim ersten Lesen übersprungen werden, denn dort
wird das mit dem JDK 1.2 eingeführte Collection-API vorgestellt.
Die seit der Version 1.0 vorhandenen Collections sind dagegen Pflicht
und werden in <a href="k100090.html#kapitelcollections1">Kapitel 14</a>
behandelt. Die nächsten vier Kapitel <a href="k100120.html#kapitelcharacterstreams">18</a>
bis <a href="k100136.html#verzeichnisse">21</a> beschäftigen
sich mit Dateizugriffen. Sie erläutern zeichen- und byteorientierte
Streams, Random-Access-Dateien und den Zugriff auf Verzeichnisse.
Den Abschluss des vierten Teils bildet <a href="k100143.html#kapitelmultithreading">Kapitel 22</a>
mit der Behandlung des Multithreadings.
<p>
Die darauffolgenden Kapitel beschäftigen sich mit dem Abstract
Windowing Toolkit und zeigen, wie man Java-Programme mit grafischer
Oberfläche schreibt. Während <a href="k100150.html#kapitelgrafikausgabe">Kapitel 23</a>
bis <a href="k100184.html#kapitellowlevelevents">29</a> Grundlagen
behandelt, die auch dann wichtig sind, wenn nur Swing-Programme geschrieben
werden sollen, werden in den Kapiteln <a href="k100192.html#kapitelmenues">30</a>
und <a href="k100206.html#kapitelawtdialogelemente">32</a> ausschließlich
AWT-Menüs und -Dialogelemente vorgestellt. <a href="k100201.html#kapitelguidialoge">Kapitel 31</a>
erklärt den Umgang mit Layoutmanagern und ist sowohl für
AWT- als auch für Swing-Programme wichtig. Den Abschluss dieses
Teils bilden zwei Kapitel, in denen gezeigt wird, wie eigene Dialogelemente
entwickelt werden können und wie man Bitmaps und Animationen
einsetzt. Zwar sind sie weitgehend AWT-spezifisch, doch ist ihr Inhalt
auch für entsprechende Swing-Programme und zum Verständnis
der Java-Beans-Architektur vonnöten.
<p>
Teil 6 des Buchs befasst sich mit der Programmierung von grafischen
Oberflächen mit Swing. Während in <a href="k100228.html#kapitelswinggrundlagen">Kapitel 35</a>
Grundlagen erklärt und Unterschiede bzw. Parallelen zum AWT aufgezeigt
werden, behandeln die nächsten drei Kapitel alle wichtigen Dialogelemente
des Swing-Toolkits. Zusammen mit den im vorigen Teil vermittelten
Grundlagen stehen nach Ende dieses Teils ausreichend Kenntnisse zur
Entwicklung eigener Swing-Applikationen zur Verfügung.
<p>
In den nachfolgenden Kapiteln <a href="k100248.html#kapitelapplets1">39</a>
und <a href="k100254.html#kapitelapplets2">40</a> wird die Applet-Programmierung
erläutert. Diese Kapitel können bei Bedarf auch vorgezogen
werden, insbesondere Swing-Kenntnisse sind zu ihrem Verständnis
nicht nötig. Die Grundlagen der Grafikprogrammierung aus Kapitel
5 sollten Sie allerdings gelesen haben.
<p>
Die beiden letzten Teile des Buchs behandeln eine Reihe weiterführender
Themen. Die Kapitel <a href="k100260.html#kapitelserialisierung">41</a>
und <a href="k100265.html#kapiteljdbc">42</a> erweitern die Möglichkeiten,
Daten persistent zu speichern. Sie erläutern das Serialisieren
von Objekten und beschreiben den Zugriff auf relationale Datenbanken.
In <a href="k100271.html#kapitelreflection">Kapitel 43</a> wird gezeigt,
wie mit Hilfe des Reflection-APIs zur Laufzeit auf die Interna von
Klassen und Objekten zugegriffen werden kann und wie Sie mit Hilfe
von Annotationen Zusatzinformationen in Ihre Klassen integrieren.
In <a href="k100279.html#kapitelbeans">Kapitel 44</a> wird die zum
Erstellen eigenständiger Komponenten wichtige Java-Beans-Architektur
vorgestellt.
<p>
Die nächsten beiden Kapitel <a href="k100292.html#kapitelnetzwerkprogrammierung">46</a>
und <a href="k100298.html#kapitelrmi">47</a> beschäftigen sich
mit der Netzwerkprogrammierung. Während das Erste die Grundlagen
vorstellt und zeigt, wie TCP/IP-Clients und -Server geschrieben werden,
stellt das Zweite verteilte Objektarchitekturen mit RMI vor. Den Abschluss
dieses Teils bildet <a href="k100302.html#kapitelsicherheit">Kapitel 48</a>
mit der Vorstellung des Sicherheitskonzepts von Java und der Beschreibung
signierter Applets. Hier werden auch wichtige kryptografische Grundlagen
erläutert. In <a href="k100307.html#kapitelsound">Kapitel 49</a>
wird das Sound-API vorgestellt, und in den letzten beiden Kapiteln
des Buchs werden Hinweise zur Steigerung der Performance von Java-Programmen
und zum Umgang mit den Hilfsprogrammen des JDK gegeben.
<!-- Section -->
<a name="sectlevel3id003001003"></a>
<h3>3.1.3 Wie geht es nun weiter? </h3>
<p>
Daß man Bücher unterschiedlich gliedern kann, ist kein
Geheimnis. Daß die Beschreibung einer Programmiersprache mehr
Aufwand erfordert als die eines Mobiltelefons oder Videorecorders,
ist ebenfalls bekannt. Ist es nun besser, eine umfangreiche Programmiersprache
zunächst aus der Vogelperspektive zu betrachten und nur die jeweils
benötigten Themen rezeptartig nachzuschlagen? Um so mit geringstem
Mitteleinsatz frühzeitig lauffähige (aber nicht notwendigerweise
verstandene) Ergebnisse zu produzieren? Oder sollte man zunächst
die Grundlagen der Sprache studieren und erst später die komplexeren
Hilfsmittel auf der Basis eines soliden Grundlagenwissens einsetzen?
<p>
Wie die Kapitelaufteilung zeigt, wurde dieses Buch unter der Annahme
geschrieben, dass der zweite Ansatz der sinnvollere ist. Platt ausgedrückt,
stehen die einfachen Dinge weiter vorne und die schwierigen weiter
hinten, und im Zweifelsfall ist diese Leserichtung durchaus sinnvoll.
Das soll allerdings keinesfalls heißen, dass unter allen Umständen
und für alle Leser das sequenzielle Durchlesen die richtige Vorgehensweise
ist. Wie erwähnt, mag es durchaus sinnvoll sein, zu einem anderen
Ablauf zu kommen. Gerade beim Einsatz im geschäftlichen Umfeld
hat man durch Termin- und Projektdruck nicht immer die Zeit, die Anwendung
neuer Werkzeuge mit der nötigen Ruhe zu erlernen.
<p>
Letztendlich müssen Sie selbst entscheiden, welche der Kapitel
Sie durchlesen wollen und in welcher Reihenfolge Sie das tun. Die
vorgegebene Kapitelaufteilung und -reihenfolge mag Ihnen dabei ein
Leitfaden sein. Wählen Sie die Technik, die Ihren Neigungen und
Erwartungen am meisten entgegenkommt und am besten mit Ihren Beweggründen
in Einklang zu bringen ist. Dann werden Sie den größtmöglichen
Nutzen aus dem Buch ziehen.
<hr>
<table border=0 cellpadding=0 cellspacing=1 width="100%">
<tr bgcolor="#EEFFCC">
<td width="7%" align=center bgcolor="#DDCC99"><a href="cover.html"> Titel </a>
<td width="7%" align=center bgcolor="#DDCC99"><a href="k100003.html"> Inhalt </a>
<td width="7%" align=center bgcolor="#DDCC99"><a href="search.html"> Suchen </a>
<td width="7%" align=center bgcolor="#DDCC99"><a href="index.html"> Index </a>
<td width="7%" align=center bgcolor="#DDCC99"><a href="../jdkdocs/index.html" onClick="this.href=getDocIndex()"> DOC </a>
<td align="right">Handbuch der Java-Programmierung, 5. Auflage, Addison
Wesley, Version 5.0.1
<tr bgcolor="#EEFFCC">
<td width="7%" align=center bgcolor="#DDCC99"><a href="k100018.html"> << </a>
<td width="7%" align=center bgcolor="#DDCC99"><a href="k100018.html"> < </a>
<td width="7%" align=center bgcolor="#DDCC99"><a href="k100020.html"> > </a>
<td width="7%" align=center bgcolor="#DDCC99"><a href="k100022.html"> >> </a>
<td width="7%" align=center bgcolor="#DDCC99"><a href="../jdkdocs/api/index.html" onClick="this.href=getApiIndex()"> API </a>
<td align="right">© 1998, 2007 Guido Krüger & Thomas
Stark, <a href="http://www.javabuch.de">http://www.javabuch.de</a>
</table>
<a name="endofbody"></a>
</body>
</html>
|