If you are starting out learning Java, then this book is NOT for you. If you have programmed quite a bit in java then this book is NOT for you.
With the introduction above, let me start with the good points about the book:
1. A good amount of effort put in for Swing and AWT related concepts.
2. There are some exercise questions to follow after each chapter.
3. Gives some introduction on Android. This I think is good because as a beginner its appealing to know the adaption of Java language.
Now to the not so good parts:
1. Uses/Encourages the use of NetBeans IDE. Whereas beginners are not encouraged to use IDEs as they never allow you to fail.
2. No chapters on Generics and Collections. Threading covered in terms of Swing which is not the right way to cover it.
3. No try-with-resources feature of Java 7 mentioned in the exception handling section.
4. The chapter on creating Web Services using JAX-WS, parsing XML were not really required. Moreover there has been mention of REST in the JAX-WS chapter where as its using SOAP.
5. No real value added examples to back the content.
6. No good coverage of OOP concepts.
The bottom line is if you are serious about learning Java, then this book is not recommended. The content is simple to understand, but it really doesn't teach Java the right way.
And on a closing note, one can learn a language only when they spend some time learning and trying out the examples and for a language like Java learning about its API is also important.
Disclosure: I received a copy of this book from the publisher in exchange for writing this review on behalf of CodeRanch.