Errata for Java: The Good Parts
Submit your own errata for this product.
The errata list is a list of errors and their corrections that were found after the product was released. If the error was corrected in a later version or reprint the date of the correction will be displayed in the column titled "Date Corrected".
The following errata were submitted by our customers and approved as valid errors by the author or editor.
Color Key: Serious Technical Mistake Minor Technical Mistake Language or formatting error Typo Question Note Update
| Version |
Location |
Description |
Submitted By |
Date Submitted |
Date Corrected |
| Printed |
Page 25
paragraph 1, line 3 |
because the basic class of Throwable extends ...
"extends" should be "implements".
Note from the Author or Editor: This is correct; please change
...because the basic class of Throwable extends the Serializable interface...
to
...because the basic class of Throwable implements the Serializable interface...
|
Wang JiangPing |
Jan 24, 2011 |
Sep 09, 2011 |
| Printed |
Page 26
paragraph 2, line 5 |
"... as part of the signature of that exception", "exception" should be "method".
Note from the Author or Editor: this is correct; please change the line from
...to be declared as part of the signature of that exception.
to
...to be declared as part of the signature of that method.
|
Wang |
Jan 24, 2011 |
Sep 09, 2011 |
| Printed |
Page 26
paragraph 6, line 4 |
"... the exception must deal with the exception", the first "exception" should be "method".
Note from the Author or Editor: This is correct; please change the line
so the compiler can enforce the rule that any method calling the exception must deal with the exception.
to
so the compiler can enforce the rule that any method calling the method must deal with the exception.
|
Wang JiangPing |
Jan 24, 2011 |
Sep 09, 2011 |
| PDF |
Page 35
1st paragraph |
If the way in which you are going to respond to an exception is tied not just to the exception but to the context in which the method raising the exception was called, the style of code in which each call is wrapped in a try catch clause may be needed.
Should be ellipses between try and catch
(This was a production error I made...)
Note from the Author or Editor: This is correct; please insert the ellipses.
|
Kristen |
Apr 26, 2010 |
Sep 09, 2011 |
| Printed |
Page 51
paragraph 3, line 6 |
"foo->bar" should be "fooptr->bar".
Note from the Author or Editor: this is correct; please change the instance of foo->bar in the third paragraph to fooptr->bar (in the code font)
|
Wang JiangPing |
Jan 24, 2011 |
Sep 09, 2011 |
| Printed |
Page 55
paragraph 1, line 5 |
"Chapter 7" should be "Chapter 8".
Note from the Author or Editor: This is correct (although it occurs on page 58); please change the last number in the first paragraph from "7" to "8"
|
Wang JiangPing |
Jan 24, 2011 |
Sep 09, 2011 |
| Printed |
Page 57
example code |
In text you explain that you don't have a readIn.close(); in the constructor but only in the finalize method. But in the example code you have a readIn.close(); right after the object has been read.
Note from the Author or Editor: The line
readIn.close();
in the try block of the constructor should be removed.
|
Andor |
Feb 14, 2011 |
Sep 09, 2011 |
| Printed, PDF |
Page 95
1st paragraph |
In text:
we now need to change our PlayerImpl to reflect...
te correct is:
we now need to change our TeamImpl to reflect...
Note from the Author or Editor: This is correct, please make the change indicated.
|
Josivan de Souza |
Nov 05, 2010 |
Sep 09, 2011 |
| Printed |
Page 98
paragraph 2, line 4 |
"... returned from the hasNext() method ...", "hasNext()" should be "next()"
Note from the Author or Editor: This is correct, please change the instance of
hasNext()
in line 4 of the paragraph to
next()
|
Wang JiangPing |
Jan 24, 2011 |
Sep 09, 2011 |
| PDF |
Page 104
footnote |
pg 104 (footnote)
If you really want to get a grasp on how to use generics, you will need to read the generics chapter in Josh
Bloch’s Effective Java (Prentice Hall) a couple of times.
Should be ellipses like so: (Prentice Hall)...a couple of times.
(This is a production error I made...)
Note from the Author or Editor: This is correct, please insert the ellipses.
|
Kristen |
Apr 26, 2010 |
Sep 09, 2011 |
| PDF |
Page 107
1st paragraph |
So we will take the approach of saying that if a Player object does not fill a role, calling the get () method for that role on that Player object will return null.
Should be ellipses between get and ()
(This is a production error I made...)
Note from the Author or Editor: This is an error, but the correct solution is to remove the space between get and the (), not insert an ellipses. So the correct text should be
...calling the get() method for that role...
with "get()" in a code font.
|
Kristen |
Apr 26, 2010 |
Sep 09, 2011 |
| Printed, PDF |
Page 110, 111
in a lot of paragraph |
All occurrences of Comparitor, would be Comparator.
Note from the Author or Editor: This is correct; please do a search for Comparitor and replace all instances with Comparator
|
Josivan de Souza |
Nov 14, 2010 |
Sep 09, 2011 |
| Printed |
Page 113
paragraph 2, line 1 |
"We start by creating a TreeSort object ...", "TreeSort" should be "TreeSet".
Note from the Author or Editor: This is correct, please change "TreeSort" to "TreeSet"
|
Wang JiangPing |
Jan 24, 2011 |
Sep 09, 2011 |
| PDF |
Page 123
2nd paragraph |
Any call to this method will need to be in a try catch block, with an exception handler supplied for the RemoteException.
Should be ellipses between try and catch
(This is a production error I made...)
Note from the Author or Editor: Correct, please insert an ellipses between the "try" and "catch"
|
Kristen |
Apr 26, 2010 |
Sep 09, 2011 |
| Printed |
Page 123
paragraph 2, line 3 |
"(or a super-type ...", should it not be "sub-type"?
Note from the Author or Editor: This is not an error; in fact a super-type will be fine here. However, to clarify, perhaps the line should be changed from
...(or a super-type of this exception)
to
...(or a super-type of this exception, such as java.io.IOException)
where "java.io.IOException" is in the code font.
|
Wang JiangPing |
Jan 24, 2011 |
Sep 09, 2011 |
| Printed |
Page 149
paragraph 1, line 7 |
"... and the method finishes.", should it not be "the thread finishes"? Note that there is already a "Once the method is finished" in this sentence before.
Note from the Author or Editor: There is an error here, but not the one indicated. However, the phrasing is confusing. So please change the seventh line in the first paragraph from
...the boolean isDone is set to true and the method finishes.
to
...the boolean done is set to true and the method (and the thread) finishes.
Note that "boolean done" should be in the code font.
|
Wang JiangPing |
Jan 24, 2011 |
Sep 09, 2011 |
| Printed, PDF |
Page 155
1st paragrapfh |
In line 2, reference of intanceof() is an error.
The correct is instanceof, cos is a word key and not a implemented method.
Note from the Author or Editor: This is correct; please change
instanceof()
to
instanceof
|
Josivan Pereira de Souza |
Dec 11, 2010 |
Sep 09, 2011 |
| Printed |
Page 169
5th-to-last line of code sample |
Source code is wrong. The text and comment for the JUnit test method say it will increment the number of at-bats by 10 to "ensure that each test case has the minimum number of at-bats." This line:
numbats++;
Should probably be:
numbats += 10;
Note from the Author or Editor: This is an error; the suggested fix is fine; please change the example code line reading
numbats++;
to
numbats += 10;
|
James Cook |
Jul 01, 2010 |
Sep 09, 2011 |
| Printed |
Page 169
paragraph 1, line 5 |
"HashTable" should be "Hashtable".
Note from the Author or Editor: This is correct; the word "HashTable" in the fifth line of the first paragraph should be "Hashtable"
|
Wang JiangPing |
Jan 24, 2011 |
Sep 09, 2011 |
|