Effective Java Programming Language Guide
by Joshua Bloch
I got this book after programming Java for about 3 years....I can tell you that I've already learned more about Java by reading this book than any other book (or actual programming).
This book will make you think about your code in new ways. There are concepts in this book that make you think, why didn't anyone tell me that (or explain it to me that way)?
THIS IS ANOTHER BLACK BOOK YOU MUST HAVE!