JFC is the
Java Foundation classes which is made up of several parts, two of which are Swing and AWT. JFC also includes the accessibility utilities API, 2D API, etc. The AWT is the GUI toolkit and uses the underlying OS native code for actually drawing objects. The AWT includes the event model. Swing builds on the AWT and includes objects which can draw themselves. Swing does not include any native code. Swing objects draw themselves which allow for an extensive number of different types of widgets. In fact, the Swing API includes more than twice as many graphical componenets as the AWT. Since Swing does not use native code, Swing applications will have a similar look and feel across different OSes.