1) This document introduces graphical user interfaces (GUIs) and Java support for building GUIs. It discusses components, containers, layout managers, and events that make up GUIs.
2) It provides examples of creating windows and adding basic components in Swing and SWT. Layout managers like FlowLayout, BorderLayout, and GridLayout are demonstrated.
3) The document compares AWT, Swing, and SWT GUI toolkits and explains that Swing builds upon AWT to provide more functionality and platform-independent look and feel. Code examples illustrate key concepts of building Java GUIs.