 |
For beginners...
I believe that C
Thomas Wu's An Introduction to Object Oriented Programming with Java
is a very good book for those who know no programming language, and want
to learn Java. It teaches from the basics of the language. Be sure to go
to the author's website before you start using the book. It's the best
beginner's Java book I've seen. |
For Experts...
The Nutshell series from O'Reilly forms a set of handy reference books.
Java
In A Nutshell explains in brief detail the syntax of the language,
and then devotes half the book to a list of every method in every class
in the basic packages in Java v1.2 and 1.3. You can of course download
the full 1.2 or 1.3 API from Sun's website,
but I find that the paper reference is faster to look up, and easier on
the eyes, even though it goes into less detail than the electronic API. |
 |
 |
For Graphics...
Java
Foundation Classes In A Nutshell is like Java In A Nutshell, and
would complement it. It goes into the same detail for all the AWT and Swing
classes that Java In A Nutshell does for the basic Java Classes.
Again, it would probably complement the online documentation, or be even
better than the online version for those already familiar with Graphics
in Java. |
For Advanced Java...
Finally, Java
Enterprise In A Nutshell gives details about advanced Java classes
such as Remote Method Invocation, JDBC, Enterprise JavaBeans, CORBA, even
a little on Servlet programming (which when combined with JSP seems to
be the best way yet to produce dynamic web content). |
 |
 |
For pre-Experts...
This Nutshell is a little different from the others. First of
all, instead of giving a complete guide to all the tools available in Java,
it gives examples on how those tools can be used. Secondly, it provides
exercises for you to practice what you learnt. Thirdly and Fourthly, it
is cheaper, and received higher praise from readers than the other three.
Java
Examples In A Nutshell would make a good companion to the other
books, or even be useful by itself. It covers version 1.1 of the Java API. |