The SitePoint Forums have moved.

You can now find them here.
This forum is now closed to new posts, but you can browse existing content.
You can find out more information about the move and how to open a new account (if necessary) here.
If you get stuck you can get support by emailing forums@sitepoint.com

If this is your first visit, be sure to
check out the FAQ by clicking the
link above. You may have to register
before you can post: click the register link above to proceed. To start viewing messages,
select the forum that you want to visit from the selection below.

If you're just learning Java, I highly recommend Herb Schildt's Java 2: A Beginner's Guide. It's quite a lot like an actual course in Java and takes you right from basics to more advanced topics like threads and I/O & Networking. It's a bit light on GUI programming, though.

Schildt also has a general reference, Java 2: The Complete Reference, which is quite good.

Another good one is Effective Java Programming Language Guide by Joshua Bloch. Java World had it as highly recommended. The folk over at Amazon think very highly of it too.

Please do a search of the forums (all the programming ones, not just this one) on books, as this has come up many times and there has been some comprehensive discussion that is worth digging up. A free for dl online book (and a very good book at that) is Bruce Eckel's "Thinking in Java" http://www.bruceeckel.com/

Kevin Yank wrote a series of very introductory tutorials on Java at www.webmasterbase.com a while ago, he may have some recommendations mentioned there as well, as I remember he had some opinions on good Java books when I discussed it with him once ages ago.

Hehe, Platinum, L&L was my prescribed text a few years ago when I took Java (the language I learned programming in). Unless it has come on a long way since then though, I did not find it a great book for introducing programming. What it did have was a great index to the (Java 1.1 API - which was current for my edition at the time). However, of course you can access the API documentation online anyway.