Saltar al contenido

Java equivalente a los métodos de extensión de C #

Solución:

Java no admite métodos de extensión.

En su lugar, puede crear un método estático regular o escribir su propia clase.

Los métodos de extensión no son solo métodos estáticos y no solo azúcar de sintaxis de conveniencia, de hecho, son una herramienta bastante poderosa. Lo principal es la capacidad de anular diferentes métodos basados ​​en la creación de instancias de diferentes parámetros genéricos. Esto es similar a las clases de tipos de Haskell y, de hecho, parece que están en C # para admitir las Mónadas de C # (es decir, LINQ). Incluso descartando la sintaxis LINQ, todavía no conozco ninguna forma de implementar interfaces similares en Java.

Y no creo que sea posible implementarlos en Java, debido a la semántica de borrado de tipos de parámetros genéricos de Java.

Project Lombok proporciona una anotación @ExtensionMethod que se puede utilizar para lograr la funcionalidad que está solicitando.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *