Writing this book has been a humbling experience. It has taken far longer than I had predicted, or than I would like to admit. And, of course, it's not finished yet. Despite my best efforts and those of the technical reviewers, editors, and many other talented folks, a book this size is bound to contain errors, omissions, and passages that are less clear than they might be. Please, let us know by email if you happen across any of these things. Subsequent editions will incorporate changes sent in by readers just like you!
It has been said that you don't really know something until you've taught it. I have found this true of lecturing, and find it equally true of writing.
I tell my students that when Java was very young, it was possible for one person to study hard and know almost everything about Java. When JDK 1.1 came out, this was no longer true. Today, anybody who tells you they " know all about Java" should cause your "bogosity" detector to go off at full volume. And the amount you need to know keeps growing. How can you keep up? Java books? Java magazines? Java courses? Conferences? There is no single answer; all of these are useful to some people. Sun's Java software division has several programs that you should be aware of:
As you know, the Java API is divided into packages. A package is normally considered "core" if its package name begins with java, and an optional extension if its package name begins with javax. But there are already exceptions to that rule, such as javax.swing.*, which is core.
As you can see, there is no end of Java APIs to learn about. And there are still more books to be written . . . and read.