Que es Swing en Java?
No vamos a entrar en detalles sobre Java Swing, básicamente lo que debemos saber es que es un paquete que hace parte de la Java Foundation Classes o mas conocida como JFC, la cual provee herramientas o facilidades para la construcción de GUI's o interfaces Graficas de Usuario (graphical user interface).Podemos decir que Swing es la evolución del AWT (Abstract Window Toolkit), la cual al igual que Swing es un conjunto de librerias enfocadas a la construcción de interfaces, solo que con esta se presentaron algunos problemas en cuanto a portabilidad principalmente cuando se desarrollaban aplicaciones para diferentes sistemas operativos, pues el comportamiento de los componentes graficos en ocasiones podían variar...... bueno esa es otra historia, el punto es que a partir deAWT nace Swing y con el mejoras no solo en aspectos visuales sino también en portabilidad y comportamiento.....el siguiente es un ejemplo de la Jerarquía de esta librería (se muestran algunos de los principales componentes...)

Como vemos todos los componentes de Swing heredan del paquete javax.swing(obvio no?) a diferencia de los componentes AWT los Swing se reconocen porque anteponen la letra J antes del nombre, por ejemplo un botón en AWT se llama Button, mientras que en Java Swing es JButton......
Cuando vamos a construir aplicaciones utilizando Java Swing debemos tener al menos un contenedor que será la base para nuestra aplicación, es decir, sera el lienzo donde pintaremos los demás componentes.
Normalmente podemos utilizar un JFrame o JDialog, estos serán la base para nuestra ventana y en ellos pintar los paneles, botones, cajas de texto, áreas entre otros......
Con Swing le daremos vida a nuestro sistema, ya que se crearán las vistas de la aplicación, por medio de las cuales el Usuario interactuará con el sistema, veremos que se tiene una gran cantidad de posibilidades para estructurar nuestros desarrollos, se pueden manejar los eventos de cada componente dependiendo de nuestras necesidades, así como utilizar look & feel para modificar el aspecto visual de nuestras interfaces.
Y Listo!!! esta es una pequeña introducción a lo que necesitamos saber sobre estas librerías básicas en nuestro campo, en próximas entradas veremos ejemplos prácticos de cada uno de los componentes y su aplicación dando pie para futuros desarrollos y ejemplos donde obligatoriamente tenemos que hacer uso de lasGUI!!!!