Ergänzungen und Verbesserungen zum Buch
Albrecht Weinert,
Java für Ingenieure
Fachbuchverlag Leipzig im Carl Hanser Verlag, Februar 2001.
Weitere Infos zum Buch und zur Internetversion finden Sie u.a. auf den
Seiten:
[ Infos ]
[ Cover-Text ]
[ Vorwort ]
Errata zur Buchfassung
Auf dieser Seite finden Sie:
und Fehlerkorrekturen / Ergänzungen zu
Allgemeine Hinweise zu den
Errata
Wenn Sie Fehler finden oder Anregungen haben, wenden Sie sich gerne an den
Autor.
Dankenswert wäre es, wenn Sie vorher klären könnten, ob der von Ihnen
festgestellte Fehler in der letzten Text-Version im Internet bereits korrigiert ist.
Ich danke meinen Lesern und Leserinnen für ihre wertvollen Hinweise und für
die überwiegend sehr positive Resonanz.
Albrecht Weinert, Bochum, September 2001
Ergänzungen und
Korrekturen (Errata) zum Buchtext
- Kapiteleinteilung, Gliederung
- Wenn es ein Kapitel 7.1 beziehungsweise 15.1 gibt, muss es auch 7.2
beziehungsweise 15.2 geben. (Entsprechende Korrekturen gingen beim Layout
z.T. verloren; in .pdf korrekt.)
- Kapitel 9 HTML
- In diesem Kapitel zu HTML in Zusammenhang mit Java sollte noch auf die
Möglichkeit hingewiesen werden, Applets über HTML-Eingabeelemente zu
steuern. Ein solcher Hinweis fehlt.
Wie es geht finden Sie in dem
Stackrechnerbeispiel.
- S.290 unten (Buch), in .pdf / Druckvorlage korrekt, Kap. 26.6 und
andere Stellen
- Es muss "uhu > MAX_WERT ? 0 : uhu + 2"
anstelle
von "uhu > MAX_WERT
— 0 : uhu + 2" heißen.
Dieser beim ternären Operator ? : mehrfach auftretende Fehler kam
dadurch zustande, dass das Layout-Programm des Verlags alle Gedankenstriche
der Originaldatei in Fragezeichen verwandelte, was dann die (Java
unkundige) Layouterin zu gründlich von Hand korrigierte. Wer genau hinsieht,
merkt dass die falschen "Minüsse" jeweils ein bisschen zu lang
sind. Diese Fehler gab es in den aus der Originalvorlage erzeugten
.pdf-Dateien (CD) naturgemäß nie.
Die betroffenen Stellen sind im Einzelnen:
- S. 110:
- iq = q ? 1 : 0; // 24
- S. 173:
- int la = a != null ? a.length : 0; // *1
int lb = b != null ? b.length : 0; // *1
if (la == 0 && lb == 0)
return a != null ? a : b != null ? b
: new double[0]; // *2
- S. 235:
- eing = s != null && s.length() > 0 ? s
: "- Keine Eingabe -";
- S. 259:
- (a < 0) ? -a : a
- S. 290:
- uhu > MAX_WERT ? 0 : uhu + 2 (siehe oben)
- S. 303:
- h += weiblich ? 1231 : 1237;
h ^= verheiratet ? 96 : 384;
- S. 301 (Buch):
- Bei dem Hinweis ist folgender Satz zu ergänzen:
Soll dieses equals() als super.equals() für eine abgeleitete
Klasse nützlich sein, so ist this.getClass() statt Person.class
in Zeile 14 angebracht.
Auf das Thema equals() und Vererbung wird im Buch kaum (und evtl. zu
wenig) eingegangen. Deshalb ist hier der Hinweis angebracht, dass bei einem
überschreibbaren (und in der überschriebenen Methode sinnvollerweise i.A. aufgerufenen)
equals() nur
if (other == null || this.getClass() != other.getClass()) return false;
richtig ist. Das auf der gegenüberliegenden Seite gezeigte
if (!(other instanceof MeineKLasse)) return false;
hingegen ist nur zulässig wenn equals() selbst (oder natürlich
die ganze Klasse) final ist.
Etwas weiter unten auf dieser Seite:
.. statt o. immer ((Person)other).
(Das umschließende Klammerpaar ist wegen der
Vorrangregeln erforderlich.)
- S.318 (Buch), S.254 (.pdf), Kap. 25.2
- Es soll "Welche Komplexität, im Sinne der O(n)-Notation,
hat ..." statt "Welche Komplexität O(n) hat ..."
heißen, da die ursprüngliche Formulierung vielleicht eine (falsche) Lösung
suggeriert.
- S.357 ff. (Buch), in .pdf / Druckvorlage korrekt, Index
- Der Fettdruck eines Hauptverweises im Index ist bei der o.g. Umsetzung
beim Druck unglücklicherweise (zweimal) beseitigt worden.
In der .pdf-Version auch auf der CD finden Sie den Index bezogen auf die
Seitennummerierung der Buchausgabe mit den nötigen
Hervorhebungen.
Geringfügige Fehler (Minor
Errors)
In diese Kategorie fallen nicht oder wenig sinnentstellende, vom Leser i.A.
leicht korrigierbare Fehler, die häufig durch die halbautomatische
Umsetzung der Word-Vorlage bei der Druckerei entstanden sind.
Anmerkung: Der Autor sieht das aus der Hand Geben des Layout im nachhinein
als einen (seinen) schweren Fehler an. Dies brachte nicht nur in eine fertig
korrigierte und layoutete Word-Version zahlreiche und teilweise dann
übersehene Fehler ein sondern verzögerte auch das Erscheinen des Buches
um 6 wertvolle Monate und so um eine ganzes Studienjahr.
Hinweis: In der jeweils aktuellsten Version der .pdf-Datei (im Internet) sind die genannten Fehler bis
auf eine ausdrücklich genannte Ausnahme korrigiert.
- S.44 (Buch), S.35 (.pdf), Kap. 2.2.1
- "..., so wird dieser Parameter in einen oder" statt
"..., so wird dieser Parameter in einem oder".
- S.59 (Buch), in .pdf / Druckvorlage korrekt, Kap. 4.3.1
- "... laufen lassen " statt "... laufen Lassen
".
- S.65 (Buch), in .pdf / Druckvorlage korrekt, Bild 4.7
- Die Positionierung des Bildes 4.7 vor den erklärenden Text ist mehr als
unglücklich, da zusammen mit der Überschrift fälschlich suggeriert werden
könnte, es handele sich bei der Abbildung um Struktogramme.
- S.66 (Buch), S.53 (.pdf), Kap. 4.5
- Das Grundlagenkapitel(chen) 4.5 "Zahlensysteme" ist sachlich
kein Unterkapitel von Kap.4 "Algorithmus". Hier wäre ein
eigenständiges Kapitel 5 besser gewesen. Dieser Fehler wird in der
.pdf-Version nicht korrigiert, um eine gleiche Kapitelnummerierung mit dem
Buch beizubehalten.
- S.86 unten (Buch), in .pdf / Druckvorlage korrekt, Kap. 6.3
- "... Name als eindeutiges " statt "... Name
alseindeutiges ".
- S.92 unten (Buch), S.74 (.pdf), nach Beispiel 6.11
- " void belade(double) " statt " void
beladen(double) ".
- S.96 (Buch), in .pdf / Druckvorlage korrekt, Kap. 6.5
- "... Klasse; siehe Kapitel 17.2.2" statt "...
Klasse; siehe Kapitel 7.2.2".
- S.133 (Buch), S.106 (.pdf), Kapitel 10, 4. Absatz
- "... sollte man als " statt "... sollte für man
als ".
- S.135 (Buch), in .pdf / Druckvorlage korrekt, Tabelle 10.2,
Fußnoten
- Die Anmerkungen heißen "*2)" und "*3)" anstelle
irgendwelcher Schlangen und Dreiecke.
- S.169 (Buch), S.135 (.pdf), Kapitel 14 vor Beispiel 14.2
- "... Längen, 90.000 und 4, weisen " statt "...
Längen, 90 und 4, weisen ".
- S.180 (Buch), S.143 (.pdf), Kapitel 16.1, Warnhinweis vor Übung
16.1
- Zwei mal "... sie ..." statt "... Sie
...".
- S.190 (Buch), S.151 (.pdf), Kapitel 16.4, vorletzter Hinweis
- "... Haben eines Locks eines Objekts ..." statt
"... Haben eines Locks eines Objekt ...".
- S.311 (Buch), S.246 (.pdf), Kapitel 23.2.8, drittletzter Absatz
- "... von der Speicherung von Zuständen ..." statt
"... von die Speicherung von Zuständen ...".
- S.342-343 (Buch), S.274-275 (.pdf), Kap. 29
- Die Abkürzungen AC und DC für Gleich- und Wechselstrom werden im Buch
nirgendwo verwendet und sind themenfremd.
- S.360 (Buch), S.290 (.pdf), Die CD
- Der Hinweis, dass der mitgelieferte JBuilder (leider) nur eine
Trial-Version ist, fehlt. Desgleichen wäre ein Hinweis auf Forte for Java,
Community Edition (frei) angebracht. (Inzwischen nimmt man Eclipse, und
lebt weitgehend sehr gut damit.)
Errata zu Buch, CD
und Software, Stand: 15.04.2002
Copyright © Albrecht Weinert 2000
Alle Rechte vorbehalten.
Zum Seitenanfang, zum Vorwort, zum Cover-Text, zu den Infos zum Buch.