¿Cómo crear una clase anónima en java
Clases internas anónimas (por lo general sólo llamada clases anónimas) son probablemente la característica más extraña del lenguaje de programación Java. La primera vez que se ve una clase anónima, es casi seguro que piensa que alguien ha cometido un error y que el código no puede compilar. Pero compilar lo hace, y aún funciona. Cuando usted consigue la caída de trabajar con clases anónimas, se preguntará cómo ha llegado por sin ellos.
Una clase anónima es una clase que se define en el lugar, justo en el punto en el que desea crear una instancia de la misma. Debido a codificar el cuerpo del derecho de clase donde usted lo necesita, usted no tiene que darle un nombre. (Es por eso que se llama un anónimo clase.)
La forma básica para declarar y crear instancias de una clase anónima es la siguiente:
nueva ClassOrInterface () {clase de cuerpo}
Como se puede ver, se especifica el nuevo palabra clave seguida por el nombre de una clase o interfaz que especifica el tipo del objeto creado a partir de la clase anónima.
Este nombre de clase o interfaz es seguido de paréntesis, que pueden incluir una lista de parámetros que se pasa al constructor de la clase anónima. Entonces codificar un cuerpo de clase entre llaves. Este cuerpo de la clase puede incluir cualquier cosa que un cuerpo de la clase regular puede incluir: campos, métodos, e incluso otras clases o interfaces.
He aquí un ejemplo de una clase anónima simple:
public class AnonClass {main (String [] args) {static void públicas bola de b = new Ball () {public void hit () {System.out.println ("Le pegó a él!") -}} - b.hit ( ) -} interfaz Bola {void hit () -}}
En este ejemplo, interfaz llamada Bola se crea que tiene un único método denominado golpear. Luego, de vuelta en el principal método, una variable de tipo Bola se declara y una clase anónima se utiliza para crear un objeto. El cuerpo de la clase anónima consiste en una implementación de la golpear método que simplemente muestra el mensaje Le pegó a él! en la consola.
Después de la clase anónima se instancia y se asigna a la b variable, el próximo estado de la llama golpear method.When ejecuta este programa, la única línea Le pegó a él! se visualiza en la consola.
Aquí hay algunas cosas para reflexionar cuando se trabaja con las clases anónimas:
No puede crear un constructor para una clase anónima, porque la clase anónima no tiene un nombre. ¿Qué haría usted llamar al constructor, de todos modos?
No se puede pasar parámetros si la clase anónima se basa en una interfaz. Eso hace que las interfaces de los sentidos no tienen constructores, así que Java no tendría nada para pasar los parámetros a.
Una sentencia de asignación puede utilizar una clase anónima como se muestra en este ejemplo. En ese caso, el cuerpo de la clase anónima es seguido por un punto y coma, que marca el final de la instrucción de asignación. Tenga en cuenta que este punto y coma es parte de la instrucción de asignación, no la clase anónima.
Una clase anónima es un tipo especial de clase- interior como cualquier clase interna, tiene automáticamente el acceso a los campos y los métodos de su clase externa.
Una clase anónima no puede ser estática.