Just read an old review by Pan Pantziarka shredding Sams Teach Yourself Java 2 in 24 Hours, my beginner's Java book last revised in 2002.
By the end of the book, assuming you haven't been stunned into a coma by the author's humor (yep, it's a US thang), you'll have a very superficial view of Java programming. What you won't have is the knowledge or the insight to produce anything useful.
This book, which has done well with new-to-Java novices, will occasionally receive a total ass-kicking at the hand of a professional coder like Pantziarka.
Without challenging his conclusion that my work sucks big rocks, I think that some coders misunderstand the target audience for a 24 Hours title.
My goal was to write a Java tutorial that could be tackled successfully by total beginners and people scared off the subject by the complexity of college courses and existing books. My imaginary target reader was a person who needed a moment to get his head around the concept of a multi-dimensional array.
You can't serve that audience without reducing to the language elements you believe are most crucial to understanding.
There are plenty of books that assume some level of comfort with basic programming concepts, but I didn't think that Java had a tutorial that could evoke an aspiring programmer's first "by George, I think I've got it!" experience.