Having engaged in programming for the past eight years, I find this book to be fabulous. In college the programming language of choice has been Java for a couple of years now and, while it is not the most powerful language it is highly versatile.
Basic Java texts rarely are as easily understandable as this book -- with a clear and concise writing style -- even though this is a book on advanced Java features.
The author provides insights into the Java programming language in many different facets. And these facets are fundamental ones for writing Enterprise applications.
Without getting too detailed on aspects such as multi-threading, encryption, and security, he explains the fundamentals in a way that does not just hand feed the reader but takes them on a journey of understanding. The reader is shown a sample program illustrating a concept and then the program is explained clearly, unlike other programming books. What's fascinating is that in some instances the author challenges the reader to find the flaws in the program just presented.
One example of this that comes to mind is when he deals with threads, he gives a program that works yet the flaws exist when the program is implemented on a large scale. He then builds up the solution step by step till a completed model is revealed.
This is a great book for the advanced programmer and for any professional programmer who needs to learn Java's abilities for the enterprise environment. I give it two bits up!