Errata

Java in a Nutshell

Errata for Java in a Nutshell

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 xvii
Bottom of page

Changed:
"Christine Byrne" and "Judith Byrne"
to:
"Christina Byrne" and "Judita Byrne"

Anonymous    Jan 01, 2000
Printed
Page xvi
The following information was added to the

"Request for Comment" section:

We have a web site for the book, where we'll list examples, errata, and any
plans for future editions. You can access this page at:
http://www.oreilly.com/catalog/9781565924871/
For more information about this book and others, see the O'Reilly web site:
http://www.oreilly.com

Anonymous    Feb 01, 2000
Printed
Page xi
3rd paragraph

"are an server-side" now reads "are a server-side"

Anonymous    Jun 01, 2000
Printed
Page 7
3rd Paragraph, last sentence

The last sentence no longer has "is" and "has" together.

Anonymous    Feb 01, 2000
Printed
Page 7
first paragraph

"do any harm: it cannot infect" now reads "do any harm: untrusted code
cannot infect ..."

Anonymous    Oct 01, 2000
Printed
Page 13
second paragraph under "Declaring a variable and parsing input":

Cut the sentence "They make this formula ... not just a specific set like:"
and the code line that follows. Join the next paragraph ("A variable in a Java
program...") to the previous paragraph.

***The following error applies only to the 3/01 printing of the book:***

Anonymous   
Printed
Page 17
footnote

"If you didn't understood all the details..." now reads "If you didn't
understand all the details...".

Anonymous    Oct 01, 2000
Printed
Page 20
3rd paragraph

Unicode character of PI was described:
..., and u3c00 is the character PI.
Now reads:
..., and u03c0 is the character PI.

Anonymous    Jun 01, 2000
Printed
Page 24
1st paragraph under Integer Types heading

did read
As shown in Table 2-3,
now reads
As shown in Table 2-2,

Anonymous    Feb 01, 2000
Printed
Page 25

second code example; The code reads:

byte sum = (byte) (b1 + b2); // Sum wraps to 128,
which is the smallest byte

It should be changed to read:

byte sum = (byte) (b1 + b2); // Sum wraps to -128,
which is the smallest byte

***The following error applies only to the 3/01 printing of the book:***

Anonymous   
Printed
Page 25
Floating-point types

All three comments are missing a multiplication sign.

Anonymous   
Printed
Page 25
Under Floating-Point Types

"As shown in table 2-3, float..."
Now reads:
"As shown in table 2-2, float...".

Anonymous    Jun 01, 2000
Printed
Page 25
second code block

Changed:
byte sum = b1 + b2; // Sum wraps to...
To:
byte sum = (byte)(b1 + b2); // Sum wraps to...

Anonymous    Jun 01, 2000
Printed
Page 25
last example

"Avagadro's Number" now reads "Avogadro's Number."

Anonymous    Mar 01, 2001
Printed
Page 26
block of code in the middle of the page

Changed the four lines to read:

double inf = 1.0/0.0; // Infinity
double neginf = -1.0/0.0; // -Infinity
double negzero = -1.0/inf; // Negative zero
double NaN = 0.0/0.0; // Not-a-Number

Also, in the paragraph above these lines of code, changed "such as 0/0" to
"such as 0.0/0.0".

Also, in the last paragraph before the "Strings" heading,
changed the sentence:

1/0 yields positive infinity, but 1 divided by
negative zero yields negative infinity.

To:

1.0/0.0 yields positive infinity, but 1.0 divided by
negative zero yields negative infinity.

Anonymous    Jun 01, 2000
Printed
Page 26
5th paragraph, just above headline "Strings"

Did read:
Float.isNan() and Double.isNan() methods.
Now reads:
Float.isNaN() and Double.isNaN() methods.

Anonymous    Jun 01, 2000
Printed
Page 26
2nd paragraph from bottom

"The only way to distinguish negative zero..."
Now reads:
"One way to distinguish negative zero..."

Anonymous    Jun 01, 2000
Printed
Page 27
2nd and 3rd paragraphs of "Type Conversions"

Changed the 2nd sentence of the second paragraph to read:

A widening conversion occurs when a value of one type is converted to
a wider type--one that has a larger range of legal values.

Deleted the 3rd sentence of the 2nd paragraph, which began,
"A narrowing conversion...fewer bits."

And changed the beginning of the 3rd paragraph to read:

Narrowing conversions are another matter, however. A narrowing conversion
occurs when a value is converted to a type that is not wider than it.
Narrowing conversions are not always safe: it is reasonable to convert...

Also, changed "$ndash;128" to "-128"

Anonymous    Jun 01, 2000
Printed
Page 29
Code in middle of page

The following code line:
1.7 // An integer literal
Now reads:
1.7 // A floating-point literal

Anonymous    Jun 01, 2000
Printed
Page 32
3rd paragraph of "Operand number and type"

Changed the last line of this paragraph to read:

"...operands must be convertible to the same type."

Anonymous    Jun 01, 2000
Printed
Page 37

The second paragraph of the section "Conditional AND (&&)" reads:

This operator (and all the Boolean operators except the
unary ! operator) have a lower precedence....

HAVE should be HAS.

Anonymous   
Printed
Page 39
Code under the Bitwise Complement (~)

Did read:
byte b = ~12 //~00000110 ==> 11111001 or -13 decimal
Now reads:
byte b = ~12 //~00001100 ==> 11110011 or -13 decimal

Anonymous    Jun 01, 2000
Printed
Page 39
Code under Bitwise XOR (^)

Did read:
10 & 7
Now reads:
10 ^ 7

Anonymous    Jun 01, 2000
Printed
Page 40
bottom:

"the same x=x+2" now reads "the same as x=x+2".

Anonymous    Oct 01, 2000
Printed
Page 40
2nd block of code


-50 >>> 2 // 11001110 >>> 2 = 00110011 = 51
0xff >>> 4 // 11111111 >>> 4 = 00001111 = 15 = 255/16

now reads

0xff >>> 4 // 11111111 >>> 4 = 00001111 = 15 = 255/16
-50 >>> 2 // 0xFFFFFFCE >>> 2 = 0x3FFFFF33 = 1073741811

Anonymous    Mar 01, 2001
Printed
Page 41
1st paragraph of "The Conditional Operator"

Changed the last line of this paragraph to read:

"...of any type, but they must be convertible to the same type."

Anonymous    Jun 01, 2000
Printed
Page 43
In the "Object creation (new)" list item

Changed first sentence to read "In Java, objects (and arrays) are ..."

Anonymous    Jun 01, 2000
Printed
Page 44-45
The code blocks that starts at the bottom of 44

and finishes on 45:

The code now reads:

for(int i= 0; i < 10; i++) {
a[i]++; // Body of this loop is a compound statement.
b[i]--; // It consists of two expression statements
} // within curly braces.

Note "statement" previously in Line 3 should be the end of Line 2.

Anonymous    Jun 01, 2000
Printed
Page 45
3rd paragraph, 2nd line

did read
[..] that is defined within a method orx compound statement. [..]
now reads
[..] that is defined within a method or compound statement. [..]

Anonymous    Feb 01, 2000
Printed
Page 45
2nd par.,

"a identifier" now reads "an identifier"

Anonymous    Jun 01, 2000
Printed
Page 45
2nd paragraph from bottom

First sentence did read:
"does not allow you to use a variable"
Now reads:
"does not allow you to use a local variable"

Anonymous    Jun 01, 2000
Printed
Page 46
3rd code block

The line did read:

int j = 0; // Declare j; i and j are in scope here

Now reads:

int j = 0; // Declare j; the scope of j begins here
i++; // i is in scope here; increment it

Anonymous    Jun 01, 2000
Printed
Page 46, 47, 48

All long equals signs are now separated by a thinspace, making
2 short equals signs (==).

Anonymous    Jun 01, 2000
Printed
Page 49
last paragraph

"cannot contain a runtime expressions" should read "cannot contain a runtime
expression".

Anonymous   
Printed
Page 50
middle:

"are commonly used as a loop counters" should read "are commonly used as loop
counters".

Anonymous   
Printed
Page 51
footnote

Second sentence of this footnote has been removed.

Anonymous    Jun 01, 2000
Printed
Page 55
Code in middle, Line 3

... 0"));
only one ')' is needed

Anonymous    Feb 01, 2000
Printed
Page 55
Last paragraph

java.langThrowable
should be
java.lang.Throwable

Anonymous    Feb 01, 2000
Printed
Page 55
paragraph after "Exception types" heading

Changed "java.langThrowable" to "java.lang.Throwable".

Anonymous    Jun 01, 2000
Printed
Page 55
code

did read:
throw new IllegalArgumentException("x must be >= 0"));

now reads:
throw new IllegalArgumentException("x must be >= 0");

Anonymous    Jul 01, 2000
Printed
Page 55
code

did read:

throw new IllegalArgumentException("x must be >= 0"));

now reads:

throw new IllegalArgumentException("x must be >= 0");

Anonymous    Oct 01, 2000
Printed
Page 59
last few paragraphs before "Methods"

In the paragraph that starts "In previous discussions...", changed
the second to last sentence to read:

The finally clause gives us a way to write a while loop that handles the
continue statement in the same way that a for loop does.

After the second code block, added this new sentence:

Note, however, that placing the increment statement within a finally block
causes this while loop to respond to break statements differently than the
for loop does.

Anonymous    Jun 01, 2000
Printed
Page 59
first paragraph after "Methods"

Changed "A method is a named collection of Java..."
to "A method is a named sequence of Java..."

Anonymous    Jun 01, 2000
Printed
Page 60
bulleted list

Changed the fourth bullet item to read:

The checked exceptions that the method can throw (the signature may
also list unchecked exceptions, but these are not required)

Anonymous    Jun 01, 2000
Printed
Page 63
2nd paragraph, 4th line up from bottom

java.lang.Constructor
Now reads:
java.lang.reflect.Constructor

Anonymous    Jun 01, 2000
Printed
Page 63
last paragraph

At the start of the paragraph that begins "String literals can be only a
single line...":

The new opening sentence now reads "String literals cannot contain comments,
and may consist of only a single line."

Anonymous    Jul 01, 2000
Printed
Page 63
last paragraph

At the start of the paragraph that begins "String literals can be only a
single line...":

A new opening sentence now reads "String literals cannot contain comments,
and may consist of only a single line."

Anonymous    Oct 01, 2000
Printed
Page 64
2nd block of code

Changed the following lines:

Class typeInt = int.type;
Class typeIntArray = int[].type;

To:

Class typeInt = int.class;
Class typeIntArray = int[].class;

Anonymous    Jun 01, 2000
Printed
Page 66
4th text paragraph

Deleted this paragraph and replaced it with:

Every array has a length field that specifies the number of elements it
contains. Note that this field is read-only: you can use it to read the
length of the array, but you cannot assign any value to it or use it to
set or change the length of an array.

Anonymous    Jun 01, 2000
Printed
Page 66
last code block

Changed the following two lines:

int[] values; // Array elements initialized elsewhere
int total = 0; // Store sum of elements here

To read:

int[] values; // Assume array is created and initialized elsewhere
int total = 0; // Store sum of elements here

Anonymous    Jun 01, 2000
Printed
Page 71
top

"following code that manipulate" should read "following code that manipulates".

Anonymous   
Printed
Page 71
3rd paragraph

Under "Copying Objects and Arrays", "codex" now reads "code"

Anonymous    Feb 01, 2000
Printed
Page 73
Last paragraph

Added closing paren after Object, to read "(from Object),"

Anonymous    Jun 01, 2000
Printed
Page 76
The second bulleted paragraph on this page ("All array types...with an

explicit cast.") should be deleted.

In third bulleted paragraph, the first sentence, "Arrays do not have a type
hierarchy, but..." should also be deleted.

A new bulleted paragraph at the end of the list (after the code example)
should be added:

An array of a primitive type cannot be converted to an
array of any other type. However, an array of reference
type A can be converted to an array of reference type B
through a widening or narrowing conversion if type A can
be converted to type B through a widening or narrowing
conversion. For example, a String[] value can be assigned
to a variable of type Object[].

Anonymous   
Printed
Page 79
first code block

Changed from:
public static void main(String args[])
To:
public static void main(String[] args)

Anonymous    Jun 01, 2000
Printed
Page 79
second code block

Changed "C:>" to "%" at the beginning of the code line.

Anonymous    Jun 01, 2000
Printed
Page 79
third paragraph under "Defining and Running Java Programs,"

second-to-last sentence:
"(or -cp)" was added after "option".

Anonymous    Mar 01, 2001
Printed
Page 79
5th paragraph

The last sentence "You may also need to specify the -classpath option
to tell the interpreter to look for the classes..." now reads "You may also
need to specify the -classpath option to tell the interpreter where to look
for the classes..."

Anonymous    Mar 01, 2001
Printed
Page 80
code blocks at top of page

Changed "C:>" to "%" at the beginning of each code line.

Anonymous    Jun 01, 2000
Printed
Page 81
No struct and union types

Should mention that subclassing replaces most union behavior

Anonymous    Feb 01, 2000
Printed
Page 81
Bottom of the page, "No variable-length argument lists" list item

Changed second sentence to read:
...simulate C varargs functions for simple cases, and arguments can also
be passed as an Object[],...

Anonymous    Jun 01, 2000
Printed
Page 87
1st full paragraph

"which is is perfectly" should read "which it is perfectly".

Anonymous   
Printed
Page 88
1st full paragraph

"method has such an long, awkward" should read "method has such a long,
awkward".

Anonymous   
Printed
Page 89
2nd par. from bottom:

"compiler determines which constructor you wish based" now reads "compiler
determines which constructor you wish to use based".

Anonymous    Oct 01, 2000
Printed
Page 91
Code at bottom

The line:
private static final NUMPTS = 500;
Now reads:
private static final int NUMPTS = 500;

And the last lines:

double x = 0.0, delta_x;
delta_x = (Circle.PI/2)/(NUMPTS-1);

Now read:

double x = 0.0;
double delta_x = (Circle.PI/2)/(NUMPTS-1);


Anonymous    Jun 01, 2000
Printed
Page 92
Code halfway down

First line of the code did read:
"private static finale"...

Now reads:
"private static final"...

Anonymous    Jul 01, 2000
Printed
Page 92
code halfway down

first line of the code did read:

"private static finale"...

now reads:

"private static final"...

Anonymous    Oct 01, 2000
Printed
Page 92
line -5:

"free method" now reads "free function", as the C language doesn't have
methods.

Anonymous    Oct 01, 2000
Printed
Page 93
line -15:

"argso[]" now reads "args[]".

Anonymous    Oct 01, 2000
Printed
Page 99
bottom

This code example is now on two lines, reading:

// Invoke the finalizer of our superclass.
super.finalize();

Anonymous    Jun 01, 2000
Printed
Page 104
Fourth and fifth paragraphs

In the fourth paragraph, change "in the overriding method" to "in the
overriding class"

In the first sentence of the 5th paragraph, change "from within the method
that overrides it" to "from within the class that overrides it".

Anonymous   
Printed
Page 104
5th paragraph

"there is no way for a program that uses an object" should read "there is no
way for a program that uses that object".

Anonymous   
Printed
Page 104
3rd paragraph from bottom

1st sentence:
"...from within the method that overrides it."
Now reads:
"...from within the class that overrides it."

Anonymous    Jun 01, 2000
Printed
Page 105
"Access Control" paragraph

"In an number of"

should read

"In a number of"

Anonymous   
Printed
Page 106
The footnote on this page should be removed.

Anonymous   
Printed
Page 109
sample code; Instead of

protected checkRadius(double radius){
...
}

the method should be:

protected void checkRadius(double radius){
...
}

Anonymous   
Printed
Page 109
Example 3-4

The line:
protected checkRadius(double radius) {
Now reads:
protected void checkRadius(double radius) {

Anonymous    Jun 01, 2000
Printed
Page 109
line 25:

There was an unnecessary semi-colon after the definition of the getRadius()
method.

Anonymous    Oct 01, 2000
Printed
Page 114
line -21

double totalDistance;

now reads

double totalDistance = 0;

Anonymous    Oct 01, 2000
Printed
Page 115
4th paragraph

"If you use an abstract clas, ...."

should be "class."

Anonymous   
Printed
Page 116
top

"upper-left" now reads "upper-right" to correspond with the example

Anonymous    Jun 01, 2000
Printed
Page 116
middle

The line:
public setUpperRightCorner(double x, double y);
Now reads:
public void setUpperRightCorner(double x, double y);

Anonymous    Jun 01, 2000
Printed
Page 116
Last line of code

Did read:
public interface SuperShape implements Positionable, Transformable {}

Now reads:
public interface SuperShape extends Positionable, Transformable {}

Anonymous    Jul 01, 2000
Printed
Page 116
last line of code

did reads:

public interface SuperShape implements Positionable, Transformable {}

now reads:

public interface SuperShape extends Positionable, Transformable {}

Anonymous    Oct 01, 2000
Printed
Page 120
Example 3-9

In the following lines:

// This method returns an Enumeration...
public java.util.Enumeration enumerate() ...

Moved the second line right two spaces so it lines up
under "//".

And in these lines:

// The constructor uses the private head field...
public Enumerator() ( current ...

Moved the second line right four spaces so it lines up
under "//".

Anonymous    Jun 01, 2000
Printed
Page 120
Last sentence

"...code using the LinkedStack class..."
Now reads:
"...code (in a different package) using the LinkedStack class..."

Anonymous    Jun 01, 2000
Printed
Page 128
Example 3-11

The 4th line:
Linkable current; = head;
Now reads:
Linkable currrent;

Anonymous    Jun 01, 2000
Printed
Page 134
Synchronized entry

In the third column of the entry for "synchronized", change:

The method makes non-atomic modifications to the class or
instance, so care must be taken to ensure that two threads cannot
modify the class or instance at the same time.

To this:

The method is not inherently thread-safe, so this modifier tells
the Java interpreter to ensure that no other
<literal>synchronized</literal> method of this object or class
is run at the same time as this one.

Anonymous   
Printed
Page 138
code section, line 13 from the bottom

t.getChars(0, 3, ca, 1); // Put 1st 3 chars of s into ca[1]-ca[3]

should read:

t.getChars(0, 3, ca, 1); // Put 1st 3 chars of t into ca[1]-ca[3]

Anonymous   
Printed
Page 138
2nd paragraph

The 4th line:
"String are immutable"
Now reads:
"String objects are immutable"

Anonymous    Jun 01, 2000
Printed
Page 138
Code, near middle

The line:

t.getChars(0, 3, ca, 1); // Put 1st 4 chars of s into ca at position 2

Now reads:

t.getChars(0, 3, ca, 1); // Put 1st 3 chars of s into ca[1]-ca[3]

Anonymous    Jun 01, 2000
Printed
Page 138
last code line under "// Creating strings"

t1 = Object.toString(); // Convert objects to strings with toString()

now reads

t1 = object.toString(); // Convert objects to strings with toString()

Anonymous    Mar 01, 2001
Printed
Page 138
13th line from bottom

The line

t.getChars(0, 3, ca, 1); // Put 1st 3 chars of s into ca[1]-ca[3]

now reads

t.getChars(0, 3, ca, 1); // Put 1st 3 chars of t into ca[1]-ca[3]

Anonymous    Mar 01, 2001
Printed
Page 141
2nd code example,

The 3rd line:
short sh = Short.parseShort(sh);
Now reads:
short sh = Short.parseShort(s);

Anonymous    Jun 01, 2000
Printed
Page 141
line 23:

The statement "The valueOf() method can handle arbitrary bases" is incorrect--
it can only handle bases between Character.MIN_RADIX (==2) and
Character.MAX_RADIX (==36) inclusive.

// The valueOf() method can handle arbitrary bases

now reads

// The valueOf() method can handle arbitrary bases between 2 and 36

Anonymous    Oct 01, 2000
Printed
Page 142
the line

float f = generator.nextFloat(); // 0.0 <= d < 1.0

now reads:

float f = generator.nextFloat(); // 0.0 <= f < 1.0

Anonymous    Oct 01, 2000
Printed
Page 148

config.getProperties("filterclass", // The property name
"com.davidflangan.filters.Default"); // A default

now reads

config.getProperty("filterclass", // The property name
"com.davidflanagan.filters.Default"); // A default

Also:

String classdir = config.getProperties("classpath");

now reads

String classdir = config.getProperty("classpath");

Anonymous    Oct 01, 2000
Printed
Page 148
line -7:

"import java.net.URLClassLoader;" now reads "import java.net.*;"

Also:

The line "Another technique:" was added after

} catch (Exception e) { /* Handle exceptions */ }

Anonymous    Oct 01, 2000
Printed
Page 149
paragraph after first code block

"does not run" now reads "does not typically run."

Anonymous    Mar 01, 2001
Printed
Page 150
2nd code example, near bottom of the page

The code example is written:

Timer.schedule(displayTime, 0, 1000);

which is not correct. The line should be

timer.schedule(displayTime, 0, 1000);

to access the object "timer" and not the class "Timer".

Anonymous   
Printed
Page 150
7th line

Did read:
boolean keepRunning = true;
Now reads:
volatile boolean keepRunning = true;

Anonymous    Jul 01, 2000
Printed
Page 150
7th line

did read:

boolean keepRunning = true;

now reads:

volatile boolean keepRunning = true;

Anonymous    Oct 01, 2000
Printed
Page 151
Last paragraph

"carefu" now reads "careful"

Anonymous    Feb 01, 2000
Printed
Page 151
last line of first code example

sorter.join();

now reads

try { sorter.join(); } catch(InterruptedException e) {}

Anonymous    Mar 01, 2001
Printed
Page 151
third paragraph:

"declare any sensitive methods" now reads "declare all sensitive methods."

Anonymous    Mar 01, 2001
Printed
Page 152
"When a thread calls the wait() method of an object, it is added" now

reads "When a thread calls the wait() method of an object, any locks the thread
holds are temporarily released, and the thread is added..."

Anonymous    Mar 01, 2001
Printed
Page 153
after first line of code, the line

import java.util.*;

was inserted.

Anonymous    Oct 01, 2000
Printed
Page 159
1st paragraph

In line 5, "Server Socket" now reads "ServerSocket".

Anonymous    Oct 01, 2000
Printed
Page 160
line 5 of example

"host.domain.org" now reads "host.example.com".

Anonymous    Mar 01, 2001
Printed
Page 180
section discussing JavaBeans

When "indexed property" is defined (halfway down the page), "property" is
mistakenly split into "proper ty".

Anonymous   
Printed
Page 180
3rd paragraph after list, line 2

"proper ty" now reads "property".

Anonymous    Oct 01, 2000
Printed
Page 193
Code comment

The line:

* their sum. * @param c1 A Complex object

Now reads:

* their sum.
* @param c1 A Complex object

Anonymous    Jul 01, 2000
Printed
Page 193
code comment

The line:

* their sum. * @param c1 A Complex object

now reads:

* their sum.
* @param c1 A Complex object

Anonymous    Oct 01, 2000
Printed
Page 193
fourth line from bottom of code example:

public Complex add(Complex c1, Complex c2) {

now reads

public static Complex add(Complex c1, Complex c2) {

Anonymous    Mar 01, 2001
Printed
Page 194
2nd paragraph, 2nd line

Cut one "such as".

Anonymous   
Printed
Page 209
2nd para

Changed "Hotspot" to "HotSpot"

Anonymous    Jun 01, 2000
Printed
Page 209
Code in middle

Did read:
% setenv JAVA_COMPILER NONE // Unix syntax

Now reads:
% setenv JAVA_COMPILER NONE // Unix csh syntax

{343} constants of class Double;
Did read:
public static final double MIN_VALUE;
Now reads:
public static final double MIN_VALUE; =4.9E-324

(added the value)


Anonymous    Jun 01, 2000
Printed
Page 227
4th paragraph under jdb

"suspendx" now reads "suspend".

Anonymous    Oct 01, 2000
Printed
Page 240
3rd para

"Java 1.2x" now reads "Java 1.2".

Anonymous    Oct 01, 2000
Printed
Page 291
Second full paragraph

Change:

<literal>lastModified() returns the modification time of the file
(which should be used for comparison with other file times only and
not interpreted as any particular time format)

To:

<literal>lastModified() returns the modification time of the file
in milliseconds since January 1st, 1970

Anonymous   
Printed
Page 332
last sentence of Boolean description

"boolean value" now reads "Boolean object."

Anonymous    Mar 01, 2001
Printed
Page 356
1st paragraph under "Object"

Deleted the sentence that began "equals() tests whether" and ended
"byte-for-byte equivalence)."

3rd paragraph:
Deleted the first sentence and replaced it with:

The default implementation of the equals() method simply uses the ==
operator to test whether this object reference and the specified object
reference refer to the same object. Many subclasses override this method
to compare the individual fields of two distinct objects (i.e., they
override the method to test for the equivalence of distinct objects rather
than equality of object references).

INDEX:

* BufferedReader entry now refers to pages 283-284.

* Added a new entry for "Resources for further information"
under "ResourceBundle class."

Anonymous    Jun 01, 2000
Printed
Page 393
near middle

"1.2" flags were added to the lines for the public constants ONE and ZERO.

Anonymous    Mar 01, 2001
Printed
Page 458
Code, new line added after 4th line

java.security.NoSuchProviderException, java.security.SignatureException;

Code, 7th line:
Did read:
,java.security.SignatureException {

Now reads:
java.security.NoSuchProviderException, java.security.SignatureException;


Anonymous    Jul 01, 2000
Printed
Page 458
After 4th line of code, a new line was added


java.security.NoSuchProviderException, java.security.SignatureException;

Anonymous    Oct 01, 2000
Printed
Page 458
code, 7th line

did read:

,java.security.SignatureException {

now reads:

java.security.NoSuchProviderException, java.security.SignatureException;

Anonymous    Oct 01, 2000
Printed
Page 494
The table should be changed as follows

Month MMM (name) MM (2 digits) M (1 or 2 digits)

to

Month MMMM (full name) MM (2 digits)
MMM (short name) M (1 or 2 digits)

Anonymous   
Printed
Page 516
Class: GregorianCalendar says

...numbered from the birth of Christ that is used
is most locales throughout the world

should say:

...numbered from the birth of Christ that is used
in most locales throughout the world

Anonymous   
Printed
Page 519
line -2

"correctly,x" now reads "correctly."

Anonymous    Oct 01, 2000
Printed
Page 532

In the fourth line down under the Set heading allAll(); now reads :

addAll().

Anonymous    Oct 01, 2000
Printed
Page 562
Figure 26-1


IllegalBlocksSizeException

now reads:

IllegalBlockSizeException

INDEX:

An updated index was added.

Anonymous    Oct 01, 2000
Printed
Page 579
Figure 28-1


IVParameterSpec

now reads:

IvParameterSpec

Anonymous    Mar 01, 2001