This is yet another one of those charity shop finds. At three quid for six hundred pages, you might say it's good value for money. On the other hand, you might quite sensibly point out that my time is rather more valuable, and I shouldn't spend it on long-winded tutorials for languages I am apparently already a senior developer for!
The truth is, while I learnt Java in the late '90s, it also means that I, er, learnt Java in the late 90s, before it picked up all its modern fancy features. Reading a tutorial that treats those things as if they've always been there seems pretty reasonable. As I've spent most of my career writing C++ and Haskell, I'm not actually a strong, idiomatic Java programmer with more corner-case knowledge than you can shake a stick at, so going back to tutorial material as a refersher isn't entirely wasted.
The introductory material is just that. Generics are skimmed over. While the higher-level concurrency tools are discussed, it's not great. For both of those, I'd go elsewhere. The section on generic collections, however, is good and thorough. The Swing chapter is hopeless introductory fluff. The end tails off into tedious bits on JAR files and Web Start and applets. Does anyone actually use applets in anger nowadays? Really? *sigh*
Much of the book reads as if it's printed-out bits of the Java website. I have suspicions they are. The applets chapter says something along the lines of "Don't worry if you don't understand the details of the syntax", for a very simple applet at the end of a book introducing all that stuff. Clearly pulled in from some other source.
In short, not a book worth reading cover-to-cover, even if you're a complete beginner. For 3 quid, the collections section and random odds and ends are worth it, even just as a nicely bound version of some web pages. Certainly not worth the cover price.
Posted 2014-07-09.