I just pulled it out and spent some time looking through it. I can more clearly talk about what it is that I dislike about it.

It is a three-year old book based on a beta version of JDK 1.2. The version of Swing it uses in all its examples is the one Sun was using before they decided where they wanted the Swing packages to live (eg, rather than javax.swing, it uses com.sun.java.swing in all its examples) - undoubtedly there are some incompatibilities between the beta and the later versions.

Perhaps my biggest complaint is that it starts out with a chapter on converting AWT to Swing, not a description from scratch of Swing programming, per se. Rather than starting with JFrame and gradually introducing concepts from there, they nibble around the corners and take a more bottom-up (and, for learning purposes, scattershot IMO) approach. They don't even officially get to JFrame, the most common Swing container, until page 231.

By contrast, Sun's online tutorial starts with JFrame, adds event listeners and components, and is generally a better "learning Swing" guide than this book.

In contrast to Topley's book (Core Java Foundation Classes), the O'Reilly book is one of the few O'Reilly books I have that I've been disappointed in. The O'Reilly book *feels* like a hurriedly written beta book in a way that I don't normally associate with O'Reilly.

As a reference, it *does* has a nice presentation of classes, class variables, and methods. But don't buy it for learning Swing.