Cargando



Clases anónimas Listener en Java

En este tutorial veremos qué es y cómo podemos poner en marcha una clase anónima Listener para nuestro programa hecho en Java.


oct 17 2014 02:52
Avanzado
oct 20 2014 13:43
Cuando trabajamos construyendo interfaces de usuario en Java, debemos prestar especial atención y esfuerzo a construir los diferentes métodos Listener o escuchas que capturan todos los eventos que se puedan generar de las acciones del usuario.

Como muchas veces cada una de estas clases Listener serán solo para el uso y consumo de un componente en particular del sistema o aplicación que estemos construyendo, no tiene mucho sentido hacer clases completas y separadas.

Es por ello que tenemos las clases anónimas, con las cuales podemos acortar la definición de los Listener y así simplificar su puesta en marcha en nuestros programas.

Clases anónimas Listener


Como mencionamos al inicio, cuando construimos componentes del tipo Listener para manejar los eventos de los elementos de nuestras interfaces de usuario, generalmente estos tienen un propósito muy específico que no se pueden reutilizar, es por ello que podemos optar por generarlos como clases anidadas y con ello simplificar un poco el código a generar.

Clases anónimas
Sin embargo como buenos programadores, seguramente vamos a requerir mejorar las cosas y hacerlas más simples aún, es aquí donde entran en juego las clases anónimas, estas nos permiten generar una clase anidada y una instancia de la misma en un solo paso, con ello nos aseguramos de facilitar el desarrollo de las diferentes interfaces de usuario.


Veamos a continuación un par de ejemplos de cómo podemos implementar una clase anónima partiendo desde una clase anidada:


java_clases_anonimas.jpg


Vemos que en la primera parte definimos un método público y luego dentro de este hacemos una clase anidada, esta clase se encarga de implementar una Interface para poder implementar un Listener para los eventos que se puedan generar en el programa.

En la parte inferior hemos hecho lo mismo que al inicio, solo que en vez de definir una clase anidada estamos definiendo la clase anónima, con lo que podemos implementar la interfaz y hacer la instancia en un solo paso, reduciendo efectivamente de esta manera las líneas de código a ejecutar.

Consideraciones de las clases anónimas

  • Una clase anónima es en realidad un tipo especial de clase anidada y será tratada como tal, sin embargo esta no puede hacer extends o implements de forma explícita.
  • Una clase anónima debe siempre implementar los métodos abstractos de la súper clase o de la Interface.
  • Las clases anónimas siempre van a utilizar la forma sin argumentos del constructor de la clase superior. En el caso que se implemente una interface el constructor será Object.
  • Por cada clase anónima que se compile, Java va a generar un archivo .class, donde se identificará cada una por el orden en que se tomen, por ejemplo ClaseExterna$1class, ClaseExterna$2.class y así sucesivamente.
Hemos visto entonces como podemos utilizar una nueva herramienta que nos permite reducir la cantidad de código que debemos escribir y generar para obtener los resultados, con ello obtendremos programas más ligeros y más fáciles de depurar por los miembros de nuestro equipo de programación o por nosotros mismos.

¿Te ayudó este Tutorial?


Sin comentarios, sé el primero!

No esperes más y entra en Solvetic
Deja tus comentarios y aprovecha las ventajas de la cuenta de usuario ¡Únete!

X