Breaking

Post Top Ad

Your Ad Spot

jueves, 19 de diciembre de 2019

Clase anónima de Java

En este tutorial, aprenderá sobre clases anónimas en Java con la ayuda de ejemplos.
En Java, una clase puede contener otra clase conocida como clase anidada. Es posible crear una clase anidada sin dar ningún nombre.
Una clase anidada que no tiene ningún nombre se conoce como una clase anónima.
Una clase anónima debe definirse dentro de otra clase. Por lo tanto, también se conoce como una clase interna anónima. Su sintaxis es:
  1. class outerClass {
  2. // defining anonymous class
  3. object1 = new Type(parameterList) {
  4. // body of the anonymous class
  5. };
  6. }
Las clases anónimas generalmente extienden subclases o implementan interfaces.
Aquí,  Tipo puede ser
  1. una superclase que extiende una clase anónima
  2. una interfaz que implementa una clase anónima
El código anterior crea un objeto object1, de una clase anónima en tiempo de ejecución.
Nota: Las clases anónimas se definen dentro de una expresión. Entonces, el punto y coma se usa al final de las clases anónimas para indicar el final de la expresión.

Ejemplo 1: clase anónima que extiende una clase

  1. class Polygon {
  2. public void display() {
  3. System.out.println("Inside the Polygon class");
  4. }
  5. }
  6. class AnonymousDemo {
  7. public void createClass() {
  8. // creation of anonymous class extending class Polygon
  9. Polygon p1 = new Polygon() {
  10. public void display() {
  11. System.out.println("Inside an anonymous class.");
  12. }
  13. };
  14. p1.display();
  15. }
  16. }
  17. class Main {
  18. public static void main(String[] args) {
  19. AnonymousDemo an = new AnonymousDemo();
  20. an.createClass();
  21. }
  22. }
Salida
Dentro de una clase anónima.
En el ejemplo anterior, hemos creado una clase Polígono . Tiene un solo método display().
Luego creamos una clase anónima que extiende la clase Polygon y anula el display()método.
Cuando ejecutamos el programa, se crea un objeto p1 de la clase anónima. El objeto luego llama al display()método de la clase anónima.

Ejemplo 2: clase anónima que implementa una interfaz

  1. interface Polygon {
  2. public void display();
  3. }
  4. class AnonymousDemo {
  5. public void createClass() {
  6. // anonymous class implementing interface
  7. Polygon p1 = new Polygon() {
  8. public void display() {
  9. System.out.println("Inside an anonymous class.");
  10. }
  11. };
  12. p1.display();
  13. }
  14. }
  15. class Main {
  16. public static void main(String[] args) {
  17. AnonymousDemo an = new AnonymousDemo();
  18. an.createClass();
  19. }
  20. }
Salida
Dentro de una clase anónima.
En el ejemplo anterior, hemos creado una clase anónima que implementa la Polygoninterfaz.

Ventajas de las clases anónimas

En las clases anónimas, los objetos se crean siempre que se requieren. Es decir, los objetos se crean para realizar algunas tareas específicas. Por ejemplo,
  1. Object = new Example() {
  2. public void display() {
  3. System.out.println("Anonymous class overrides the method display().");
  4. }
  5. };
Aquí, un objeto de la clase anónima se crea dinámicamente cuando necesitamos anular el display()método.
Las clases anónimas también nos ayudan a hacer que nuestro código sea conciso.

No hay comentarios.:

Publicar un comentario

Dejanos tu comentario para seguir mejorando!

Post Top Ad

Your Ad Spot

Páginas