I am still loving the book. There are a smattering of typos here and there which really don't severely detract from the understanding, but might as well be fixed from my point of view.
![Razz :P](./images/smilies/icon_razz.gif)
So here are a few I've noticed in whatever order. More likely they are the ones where I was holding a pen than any more serious nature of them.
Near the end of 3.3.1 we write "a primitive variables and a reference variables" -- decide on singular or plural and stick with it, so lose the 'a's or the 's's.
Right after that it seems like we meant for something to be a heading boxed or separated by a colon, like this?
"Naming Rules For a Variable: A variable name"
I was being dense but I had to re-read the line three times to see it was just a formatting error and not some weird shade of meaning.
Section 3.1 right after the boxed area on p. 44 in the 2nd line we say "to be of type the int" -- either swap 'the' and 'type' saying "the type int" or maybe "the int type" would also be good. If whoever is reading this knows Java, know how crazy I get over people calling "the Object class" "the class Object" since of course there is also a "Class class" that has instances which are "objects of type Class" or "Class objects" for short...
just below there where we describe Primitive Data Types we say "when working with raw data such AS ..." the word 'as' was dropped making the sentence break gramatically.
Point 7 on page 55. We accidentally write "one or more ocal digits" where we meant octal.
We also write "one of more binary digits" instead of "one or more"
The fact that this information is even here makes me appreciate the lack of "surgical cuts" around highly useful material immediately adjacent to exam objectives. Passing a test will most likely get you a Java job where you need to do Java to succeed, not get you excused from combat. Anyway...
p. 56, code box example. The comment in the "short s = 300; //" line should reference s not c.
p. 60, the first code box. The reference to 'x = 30 ' should instead be 'tc.x = 30'
As it is, it is true it won't compile, but it won't compile for two reasons, one being the attempt to reference an instance variable in a static method, the other that the instance variable is declared final, which was the point we intended to make here.
There are others, I will try to be more careful about noting them down, because the overall quality of this text is superlative. It really covers a lot of things that people, both novices and the careless, frequently get wrong, that are just not covered in many more superficial treatements.
Cheers,
Jesse