Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Industrial programming >> Java

Dominando las clases internas anónimas en Java: Definición, sintaxis y ejemplos prácticos

Dominando las clases internas anónimas en Java

Descubre cómo definir, implementar y aprovechar las clases internas anónimas en Java con ejemplos claros y del mundo real.

En Java, una clase puede anidar otra clase —una clase interna. Cuando esa clase interna no tiene nombre explícito, se llama clase interna anónima.

Las clases internas anónimas se definen inline dentro de otra clase o expresión. Como carecen de nombre, se crean solo cuando se ejecuta el código envolvente, haciéndolas ideales para implementaciones cortas y de un solo uso.

El patrón típico es:

class ClaseExterna { // crear una instancia de clase interna anónima Tipo instancia = new Tipo(parámetros) { // métodos sobrescritos o comportamiento adicional }; } 

Aquí, Tipo puede ser either:

  1. una superclase que la clase anónima extiende
  2. una interfaz que la clase anónima implementa

En tiempo de ejecución, la sentencia anterior construye una instancia de la clase anónima, que puede usarse a través del tipo de referencia declarado.

Importante: Como la declaración es una expresión, el punto y coma final termina la sentencia, no el cuerpo de la clase.


Ejemplo 1: Extendiendo una clase con una clase interna anónima

class Poligono { public void mostrar() { System.out.println("Dentro de la clase Poligono"); } } class DemoAnonimo { public void crearClase() { Poligono p1 = new Poligono() { @Override public void mostrar() { System.out.println("Dentro de una clase anónima."); } }; p1.mostrar(); } } public class Main { public static void main(String[] args) { new DemoAnonimo().crearClase(); } } 

Salida

Dentro de una clase anónima.

En esta ilustración, la clase anónima extiende Poligono y sobrescribe mostrar(). Cuando crearClase() se ejecuta, se crea una instancia de la subclase anónima, y se invoca su método sobrescrito.


Ejemplo 2: Implementando una interfaz con una clase interna anónima

interface Poligono { void mostrar(); } class DemoAnonimo { public void crearClase() { Poligono p1 = new Poligono() { @Override public void mostrar() { System.out.println("Dentro de una clase anónima."); } }; p1.mostrar(); } } public class Main { public static void main(String[] args) { new DemoAnonimo().crearClase(); } } 

Salida

Dentro de una clase anónima.

Aquí, la clase anónima implementa la interfaz Poligono, proporcionando la implementación del método requerido en un solo bloque conciso.


¿Por qué usar clases internas anónimas?

Las clases internas anónimas brillan en escenarios donde necesitas una implementación breve y específica al contexto:

Beneficios incluyen:

Para lógica más grande y reutilizable, considera clases nombradas o expresiones lambda (para interfaces funcionales) para mantener el código mantenible.

Java

  1. Palabra clave final en Java: Variables, métodos y clases
  2. Operador instanceof en Java: Guía completa
  3. Dominando la herencia en Java: Conceptos, tipos y ejemplos prácticos
  4. Entendiendo las clases anidadas estáticas en Java: Uso, diferencias y ejemplos
  5. Patrón Singleton en Java explicado: Cómo implementarlo y usarlo de forma segura
  6. Dominando la Reflexión en Java: Inspeccionando clases, métodos y campos en tiempo de ejecución
  7. Dominando ArrayList en Java: Operaciones, métodos y mejores prácticas
  8. Clase Stack de Java: Guía Completa de Uso y Métodos
  9. Dominando ObjectOutputStream de Java: Serialización, Métodos y Ejemplos Prácticos
  10. Dominando Java Generics: Construyendo Código Reutilizable y Type-Safe
  11. Dominando las operaciones de archivos en Java con java.io: creación, lectura, escritura y eliminación