'Java In A Nutshell' by David Flanagan (O'Reilly books) is a good basic reference. 'Thinking In Java' is a reasonable free book to learn from, and Headfirst Java has a very good reputation. Don't...