The Java Programming Language -- Ken Arnold, James Gosling, David Holmes. Paperback - 610 pages 3rd Ed (30 September, 2000). Addison Wesley; ISBN: 0201704331
An excellent, brief book that covers everything you need to know about the basics of java - reminiscent of K&R. One of the authors (James Gosling) wrote the Java programming language, so this book knows what it's talking about. The book chapters read like a C++ programmers nightmare though (objects - chapter 2, threading - chapter 6). It doesn't come with a CD, and this was part of the reason why I got it. Hint: If you want the "authoratitive tome" on a programming language, look in the bookshop for a thin book with no accompanying CD. This is likely to be the best book available ;-).
Not a bad book, but I think it's been written by a programmer more used to doing low-level C, and has a subtle disdain for "object orientated languages". The sample code provided is ok, but well commented.
Sample Code
JDK - contains some fantastic examples of how you should write Java code. Unsurprisingly they're written by experts in Java, and as such, are a little sparse on the comments front.
Black Art - contains some ok examples, but they are well commented.
Java's Sun site examples - very good, but sometimes hard to find what you're after.
General
I'm not (in case you hadn't already guessed) an experienced Java programmer. I'm an experienced Unix C, Informix-4gl, VB programmer, but I want to learn Java. It's the future of programming languages, and I don't want to get left behind.