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
|
<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,;106,cover.html;107,k100002.html;108,k100002.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=""> << </a>
<td width="7%" align=center bgcolor="#DDCC99"><a href="cover.html"> < </a>
<td width="7%" align=center bgcolor="#DDCC99"><a href="k100002.html"> > </a>
<td width="7%" align=center bgcolor="#DDCC99"><a href="k100002.html"> >> </a>
<td width="7%" align=center bgcolor="#DDCC99"><a href="../jdkdocs/api/index.html" onClick="this.href=getApiIndex()"> API </a>
<td align="right">Vorwort
</table>
<hr>
<!-- Chaplite -->
<a name="foreword"></a>
<h1>Vorwort </h1>
<p>
<b>Vorwort zur 5. Auflage</b>
<p>
Die 5. Auflage des Handbuchs der Java Programmierung wurde für
die Version 6 der Java Standard Edition mit dem Codenamen Mustang
überarbeitet und ist erstmals eine Gemeinschaftsproduktion zweier
Autoren. Die Version 6 der Standard Edition lässt diese noch
ein Stück näher an ihren großen Bruder Enterprise
Edition rücken indem Sie weitere Bibliotheken von diesem entlehnt.
<p>
Neben vielen Detailverbesserungen, überarbeiteten Listings und
Korrekturen findet der Leser in dieser Auflage
<ul>
<li>Weitere Klassen und Interfaces aus der Java Standard Bibliothek
<li>Eine überarbeitete Ein- und Ausgabe (<a href="k100016.html#subsectionscanner">Abschnitt 2.3.3</a>)
<li>Überarbeitete Beispiele für Reguläre Ausdrücke
(<a href="k100115.html#sectionregex">Abschnitt 17.1</a>)
<li>Ein neues Kapitel zur Persistenz API (<a href="k100287.html#kapitelpersistence">Kapitel 45</a>)
<li>Eine Einführung in die Welt der Annotationen (<a href="k100277.html#sectionannotationen">Abschnitt 43.6</a>)
</ul>
<p>
Als zusätzliche Neuerung finden Sie auf der beiliegenden DVD
im Ordner <font color="#660099">/MindMaps</font> erstmals die behandelten
Themenkomplexe als grafische MindMap aufgearbeitet.
<p>
<b>Guido Krüger und Thomas Stark, Oktober 2007</b>
<p>
<b>Vorwort zur 4. Auflage</b>
<p>
Die 4. Auflage des Handbuchs der Java-Programmierung behandelt die
Neuerungen, die mit der Version 5.0 der Java 2 Standard Edition eingeführt
wurden. Dieser, unter dem Codenamen »Tiger« entwickelte
Nachfolger der Version 1.4 bringt viele Verbesserungen, die vor allem
den Java-Entwicklern selbst das Leben leichter machen sollen (Stichwort
»Ease Of Development«). Zu ihnen zählen unter anderem
folgende Features:
<ul>
<li>Autoboxing/Autounboxing (<a href="k100066.html#autoboxing">Abschnitt 10.2.3</a>)
<li>Die Erweiterte for-Schleife (<a href="k100043.html#dieforschleife">Abschnitt 6.3.3</a>)
<li>Variable Parameterlisten (<a href="k100049.html#variableparameterlisten">Abschnitt 7.3.4</a>)
<li>Statische Imports (<a href="k100061.html#weitereanwinterfaces">Abschnitt 9.4</a>)
<li>Aufzählungstypen (<a href="k100067.html#aufzaehlungstypen">Abschnitt 10.3</a>),
<li>Printf-ähnliche Ausgabeformatierung (<a href="k100076.html#ausgabeformatierung">Abschnitt 11.6</a>)
<li>Generische (oder typisierte) Klassen und Collections (<a href="k100105.html#typisierteklassen">Abschnitt 15.8</a>)
</ul>
<p>
Neben der Beschreibung dieser Erweiterungen wurden kleinere Fehler
korrigiert und verschiedene Unklarheiten beseitigt. Darüber hinaus
wurden die Einstiegs- und Installationshinweise überarbeitet
sowie der Inhalt der CD-ROM an die aktuellen Java-Versionen angepasst.
<p>
<b>Guido Krüger, Oktober 2004</b>
<p>
<b>Vorwort zur 3. Auflage</b>
<p>
Das »Handbuch der Java-Programmierung« ist der Nachfolger
von »Go To Java 2« und seiner im Spätsommer 2000 erschienenen
zweiten Auflage. Somit verläßt das Buch die GoTo-Reihe,
in die es, vor allem auf Grund des erneut gestiegenen Umfangs, nicht
mehr recht hineinpasste. Dennoch ist das Handbuch der Java-Programmierung
nicht mehr und nicht weniger als die konsequente Fortführung
seiner erfolgreichen Vorgänger, die bis auf »Java 1.1 lernen«
und »Symantec Visual Cafe« zurückgeführt werden
können. Um diese Kontinuität deutlich zu machen, haben wir
die Numerierung der Auflagen beibehalten und der aktuellen Auflage
die Nummer »3.0« zugeordnet.
<p>
Unterstützt durch die große Zahl an Leserzuschriften und
die Diskussion mit Kollegen, Freunden und anderen Java-Enthusiasten
wurde das Buch mit vielen Erweiterungen und Ergänzungen versehen.
Alle für Java-Einsteiger und Fortgeschrittene wichtigen Themen
werden ausführlich behandelt. Der bewährte Aufbau wurde
beibehalten, und das Buch kann sowohl als Lehr- wie auch als Nachschlagewerk
eingesetzt werden.
<p>
Das Handbuch der Java-Programmierung besteht aus 50 Kapiteln, die
alle wesentlichen Aspekte der Programmiersprache Java und seiner umfangreichen
Klassenbibliothek erläutern. Mit über 170 Abbildungen, 80
Tabellen, 440 Beispielprogrammen und 600 Querverweisen ist es für
die Verwendung im Unterricht und zum Selbststudium bestens geeignet.
<p>
Gegenüber der zweiten Auflage wurden folgende Abschnitte neu
aufgenommen:
<ul>
<li>Zugriff auf Arrays per Reflection (<a href="k100276.html#arraysmitreflection">Abschnitt 43.5</a>)
<li>Java WebStart (<a href="k100088.html#javawebstart">Abschnitt 13.5</a>)
<li>Assertions (<a href="k100044.html#assertanweisung">Abschnitt 6.4.1</a>)
<li>Das Sound-API (<a href="k100307.html#kapitelsound">Kapitel 49</a>)
</ul>
<p>
Zudem wurde das Buch an die Version 1.4 des JDK angepasst und viele
kleine Fehler aus der vorigen Auflage korrigiert. Die Linkliste wurde
ebenso angepasst wie die Java-Historie, die Beschreibung der Standardpakete
oder die Syntax der JDK-Werkzeuge. Für Anfänger wurden die
Kapitel 2 und 3 erneut erweitert, es gibt detaillierte Erklärungen
zum Aufruf von Java-Programmen unter Windows, und <a href="k100016.html#troubleshooting">Abschnitt 2.3.7</a>
beschreibt häufig gemachte Fehler und wie man sie umgeht. Weitere
Verbesserungen gab es bei den Abschnitten über die Swing-Komponenten,
die jetzt auch die neuen 1.4-Komponenten <a href="index_j.html#ixb100001"><font color=#000080><tt>JFormattedTextField</tt></font></a>
und <a href="index_j.html#ixb100002"><font color=#000080><tt>JSpinner</tt></font></a>
sowie animierte Fortschrittsanzeigen umfassen und auf das neue Focus-Subsystem
eingehen. Der JDBC-Teil wurde um Hinweise zur Konfiguration von MS
Access, InstantDB und HSQLDB erweitert, und der <a href="index_e.html#ixb100003"><font color=#000080><tt>ExperimentalWebServer</tt></font></a>
beherrscht jetzt das <a href="index_h.html#ixb100004"><font color=#000080><tt>HEAD</tt></font></a>-Kommando
und eignet sich für den Betrieb von Java WebStart. Nicht zuletzt
gab es Verbesserungen bei der HTML-Ausgabe, die jetzt noch umfangreicher
und leichter zu bedienen ist.
<p>
Gegenüber der ersten Auflage wurden in der zweiten die einleitenden
Kapitel vereinfacht, um Anfängern den Einstieg zu erleichtern.
Zudem wurden weiterführende Themen aufgenommen, um auch dem fortgeschrittenen
Leser genügend Lesestoff zu bieten.
<p>
Die wichtigsten Änderungen der zweiten Auflage waren:
<ul>
<li>Die ersten Schritte werden ausführlicher erklärt, und
das für viele Anfänger zu schwierige Kapitel 2 wurde entfernt
<li>Es gibt eine Einführung in die objektorientierte Programmierung
sowie ein Kapitel über objektorientiertes Design und Design-Patterns
<li>Bei vielen Themenkomplexen werden in einer Einleitung zunächst
die wichtigsten fachlichen Grundlagen vermittelt, bevor auf die Umsetzung
in Java eingegangen wird (Objektorientierte Programmierung, Netzwerkprogrammierung,
SQL, Kryptographie etc.)
<li>Viele neue Kapitel oder Abschnitte sind hinzugekommen, beispielsweise
<ul>
<li>Java Beans (<a href="k100279.html#kapitelbeans">Kapitel 44</a>)
<li>Sicherheit und Kryptographie (<a href="k100302.html#kapitelsicherheit">Kapitel 48</a>)
<li>Remote Methode Invocation (<a href="k100298.html#kapitelrmi">Kapitel 47</a>)
<li>Byte-Streams (<a href="k100125.html#kapitelbytestreams">Kapitel 19</a>)
<li>Beliebig genaue Arithmetik (<a href="k100117.html#bigintbigdec">Abschnitt 17.3</a>)
<li>Internationalisierung und Ressourcen-Management (<a href="k100118.html#internationalisierung">Abschnitt 17.4</a>)
<li>Drucken und Zugriff auf serielle und parallele Schnittstelle (<a href="k100167.html#kapiteldrucken">Kapitel 26</a>)
<li>Fortgeschrittene Applet-Programmierung (<a href="k100254.html#kapitelapplets2">Kapitel 40</a>)
</ul>
<li>Zudem gibt es eine komplette Einführung in die Swing-Programmierung,
die folgende Themen behandelt:
<ul>
<li>Grundlagen und Abgrenzung zwischen Swing und AWT (<a href="k100228.html#kapitelswinggrundlagen">Kapitel 35</a>)
<li>Swing-Container und Menüs (<a href="k100232.html#kapitelswingcontainermenues">Kapitel 36</a>)
<li>Alle elementaren Swing-Komponenten (<a href="k100237.html#kapitelswingdialogelemente1">Kapitel 37</a>)
<li>Komplexe Komponenten und Panels, Tables und Trees (<a href="k100243.html#kapitelswingdialogelemente2">Kapitel 38</a>)
</ul>
</ul>
<p>
Ebenso wie zu den Vorgängerversionen wurde auch zu diesem Buch
eine HTML-Ausgabe erstellt. Sie ist auf der beigefügten CD-ROM
enthalten und stellt das komplette Buch im Hypertext-Format dar. Mit
ihren Navigationshilfen und der großen Zahl an Querverweisen
(es sind inkl. Index über 20000) ist sie ausgezeichnet als Referenz
verwendbar. Daneben enthält die CD-ROM die Beispiele aus dem
Buch sowie das Java Development Kit und weitere nützliche Werkzeuge
und Hilfsmittel.
<p>
Wie bisher kann die HTML-Ausgabe frei aus dem Internet geladen werden.
Studenten und Leser mit eingeschränkten finanziellen Möglichkeiten
können so Java lernen, ohne das Buch kaufen zu müssen, oder
können es vor dem Kauf eingehend studieren. Auch Universitäten
und vergleichbare Einrichtungen werden die Möglichkeit zur Installation
einer gespiegelten Version erhalten, um das Buch effizient in der
Java-Ausbildung nutzen zu können.
<p>
Um weitere Informationen zum Handbuch der Java-Programmierung zu erhalten,
können Sie seine Homepage unter <a href="http://www.javabuch.de">http://www.javabuch.de</a>
besuchen. Dort können Sie auch die freie HTML-Ausgabe herunterladen,
und Sie finden eine Liste aller bekannten Fehler und Ungenauigkeiten.
Teilen Sie mir Ihre Kritik und Anregungen mit, oder schreiben Sie
mir, wenn Sie Fehler gefunden haben. Natürlich können Sie
auch schreiben, dass Ihnen das Buch gefallen hat! Verständnisfragen
zu einzelnen Aspekten der Java-Programmierung kann ich aus Zeitgründen
leider nicht mehr beantworten. Sie sind besser in einer der zahlreichen
Java-Newsgroups aufgehoben (siehe <a href="k100020.html#weitereinfos">Abschnitt 3.2.2</a>).
<p>
Wie die Vorversionen wurde auch die dritte Auflage vollständig
in SGML geschrieben (der »Mutter« von HTML und XML). Alle
Werkzeuge zum Erstellen der verschiedenen Ausgaben wurden vom Autor
selbst entwickelt und sind in Java geschrieben. Die ohne zusätzlichen
Aufwand erstellbare HTML-Ausgabe kann bei Fehlern oder Erweiterungen
sehr schnell aktualisiert und unabhängig von den Nachdruckzyklen
der Papierversion gepflegt werden. Alle Änderungen werden versioniert,
der Erstdruck des Buchs entspricht der HTML-Ausgabe 3.0.
<p>
Ich wünsche allen Lesern, dass ihnen dieses Buch beim Erlernen
und Anwenden von Java ein unentbehrlicher Helfer sein wird und dass
sie nach seiner Lektüre über umfassende Kenntnisse in der
Java-Programmierung verfügen mögen.
<p>
Mein Dank gilt allen, die bei der Entstehung mitgewirkt haben. Besonders
möchte ich Kollegen und Bekannten danken, die sich der Mühe
unterzogen haben, einzelne Kapitel zu lesen, und mit ihren Hinweisen
und Anregungen zu seiner jetzigen Form beigetragen haben. Hier sind
vor allem Ilona Brinkmeier, Holger Jödicke, Boris Gruschko, Thomas
Backens, Goetz Perry, Stefan Stark, Andi Müller, Jacques Nietsch
und Carsten Leutzinger zu nennen. Den vielen Lesern der Vorversionen,
die Fehler gefunden oder Anregungen gegeben haben, möchte ich
ebenso danken wie Christiane Auf und Christina Gibbs, die das Buch
als Lektorinnen bei Addison-Wesley betreut haben.
<p>
Wie immer geht ein besonderer Dank an Sabine, Jana und Jasmin, ohne
deren Unterstützung und Geduld auch dieses Buch nicht möglich
gewesen wäre.
<p>
<b>Guido Krüger, Februar 2002</b>
<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=""> << </a>
<td width="7%" align=center bgcolor="#DDCC99"><a href="cover.html"> < </a>
<td width="7%" align=center bgcolor="#DDCC99"><a href="k100002.html"> > </a>
<td width="7%" align=center bgcolor="#DDCC99"><a href="k100002.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>
|