Not all of Swing is lightweight. Swing contains lightweight and heavyweight components. Lightweight components are those that don't use the components of the underlying OS. In other words, a Swing component is lightweight if it is responsible for drawing itself.