As principais interfaces gráficas para Java são AWT e Swing.

 
Exemplo de AWT

Abstract Window Toolkit foi a interface gráfica original da linguagem.

 Ver módulo principal: Java/Swing
 
Examplo de Swing

A interface Swing foi desenvolvida depois da AWT, e é considerada mais fácil de ser usada e com mais recursos.