FlazX
Fetched: February 2nd, 2010, 3:00am CET by Bruce Eckel
Perfect for migrating to Java from a fellow object-oriented language (such as C++), the second edition of Thinking in Java continues the earlier version's thoughtful approach to learning Java inside and out, while also bringing it up to speed with some of the latest in Java 2 features. This massive tutorial covers many of the nooks and crannies of the language, which is of great value in the programming world. The most prominent feature of the book is its diligent and extremely thorough treatment of the Java language, with special attention to object design.
Full download