Sun Microsystems' Swing release is a promising collection of both basic and advanced controls for developing rich GUI programs. Although the other new parts of JFC require the next release of Java in order to function, Swing will live and work fine with the current version of Java, at least 1.1.2. Although Swing is currently available only in an early-access developer release, the API is supposed to be somewhat fixed with this version. If you are comfortable working your way around prerelease software, the Swing components are rich and rewarding. Although performance has improved through the early access cycles, there seems to be room for improvements.
Swing is a set of components for use within applets and applications.
As such, it must live within the same restrictions as other Java code. Unfortunately, it does not live well within nontrustworthy applets yet. Until they get the kinks out for applet usage, stick to applications. Extensibility You can customize the Swing components to your heart's content. If you don't like the way something looks, change it.