Nos referimos a las interfaces y clases que nos permiten construir un evento, recibirlo y manejar que hacer con él, estos componentes son los que llamaremos Listeners o escuchas, Handling o manejadores.
Delegación
Java trabaja con un sistema de delegación de responsabilidades, esto vienen dado por que la forma en la que trabajan los eventos lo hacen de esa forma, un objeto fuente crea y dispara un evento y un objeto interesado en el mismo lo recibe y maneja el evento.
Entonces este último objeto es a quien se le delega la responsabilidad de hacer algo con el evento y debe tener dos componentes, el primero es escuchar o estar pendiente del evento y el segundo es hacer algo cuando reciba la señal que espera, por ello es que habíamos indicado los términos Listener y Handling.
Listener
El objeto Listener o escucha del evento debe implementar la interfaz correcta para el evento que se le delega, esta es la manera en la cual se puede garantizar que se utilicen los métodos correctos para poder manejar los eventos correspondientes.
Para ello podemos establecer una convención que tiene algunas excepciones, pero que normalmente es que por cada Event hay un Listener , por ello si tenemos un ActionEvent también tendremos un ActionListener, con ello si estamos creando un componente que escuche cuando suceda un ActionEvent entonces dicho componente debe implementar la Interface ActionListener.
Registro del evento
Para poder trabajar con un evento primero debemos registrarlo en nuestro objeto fuente, esto es algo muy simple para cada objeto que vaya a manejar un evento debemos agregarle dicha acción, esto lo logramos utilizando un método llamado add--Listener, donde el espacio con dos guiones que vemos corresponderá al nombre del evento.
Veamos el siguiente código parcial donde vemos como se hace todo este proceso de registro de un evento:
Vemos como creamos el objeto JButton llamado botonOK, luego creamos un Listener llamado listener1 que viene implementando la Interface correspondiente y luego a nuestro botonOK le registramos el evento de la manera en que habíamos indicado, en este caso con addActionListener() y como parámetro le pasamos el listener1 que creamos, todo esto hace que cuando pase la acción nuestro objeto sea capaz de detectar que sucedió.
Con esto finalizamos este tutorial, hemos aprendido más a fondo como es el proceso de manejar y escuchar los eventos que podemos implementar en nuestros programas en Java cuando estamos haciendo uso del paradigma de orientación a eventos para construir interfaces de usuario.