En la sección anterior aprendimos sobre clases internas, en esta sección aprenderemos sobre clases anónimas. Entonces, ¿qué es una clase anónima? Como sugiere el nombre, las clases anónimas son clases que no pueden tener nombres. No se puede hacer referencia a ellas y solo se pueden declarar con la nueva declaración cuando se crean.
Para utilizar clases internas anónimas debemos heredar una clase principal o implementar una interfaz.
Las cosas a tener en cuenta son:
1) Los constructores no se pueden definir en clases internas anónimas.
2) No puede haber variables miembro estáticas ni métodos estáticos en clases internas anónimas.
3) Las clases internas anónimas son clases internas locales, por lo que todas las restricciones sobre las clases internas locales también se aplican a las clases internas anónimas.
El formato de sintaxis de las clases anónimas es el siguiente:
classouterClass{//Definir una clase anónima object1=newType(parameterList){//Código de clase anónima};}
Nota: Debido a que las clases anónimas se definen en forma de expresiones, terminan con un punto y coma ;
Por ejemplo:
classDotcpp{publicvoiddisplay(){System.out.println (dentro de la clase Dotcpp);}}classAnonymousDemo{publicvoidcreateClass(){//La clase anónima creada hereda la clase Dotcpp Dotcppd1=newDotcpp(){publicvoiddisplay(){System.out. println(dentro de la clase anónima);}};d1.display();}}classMain{publicstaticvoidmain(String[]args){AnonymousDemoan=newAnonymousDemo();an.createClass();}}
Los resultados de ejecución son los siguientes:
dentro de la clase anónima
Por ejemplo:
interfaceDotcpp{publicvoiddisplay();}classAnonymousDemo{publicvoidcreateClass(){//La clase anónima creada implementa la interfaz Dotcpp Dotcppd1=newDotcpp(){publicvoiddisplay(){System.out.println (dentro de la clase anónima);}};d1. display();}}classMain{publicstaticvoidmain(String[]args){AnonymousDemoan=newAnonymousDemo();an.createClass();}}
Los resultados de ejecución son los siguientes:
dentro de la clase anónima
Bien, todos pueden experimentar en la computadora y digerir y absorber el contenido de esta sección.