Java 25 LTS: novedades

Java 25 ya está disponible como versión de soporte extendido (LTS) desde el pasado 16 de septiembre, y viene con cambios: desarrollar programas sencillos es más fácil, las apps se inician antes, consumen menos memoria y diagnosticar problemas es más sencillo. Además, los IDEs como IntelliJ IDEA ya lo soportan desde el día uno, así que empezar es cuestión de minutos.

Lo nuevo 

  • Archivos fuente compactos y main “de instancia”: puedes crear ejemplos, utilidades y prototipos sin la ceremonia de siempre; menos boilerplate y más foco en la lógica. Ideal para aprender, hacer demos rápidas o pruebas de concepto.
  • Importaciones por módulo: se acabó pelearse con import repetidos cuando usas muchas clases del mismo módulo; una forma más limpia de organizar tus fuentes en ejemplos y prototipos.
  • Constructores más flexibles: ahora puedes validar o preparar datos antes de llamar a super(), lo que hace que ciertos diseños sean más naturales sin trucos raros.

Concurrencia y contexto

  • Scoped Values (valores con alcance): una alternativa moderna a ThreadLocal pensada para hilos virtuales; compartir datos inmutables entre llamadas y tareas hijas es más fácil y seguro.

Rendimiento 

  • Inicio más rápido: la JVM puede usar perfiles de ejecuciones anteriores para rendir mejor nada más arrancar, reduciendo el tiempo hasta el “ritmo de crucero”.
  • Menos memoria por objeto: las “cabeceras compactas” reducen la huella, algo que se nota en servicios con muchos objetos pequeños y despliegues elásticos.
  • GC más suave: Shenandoah ahora es generacional y hay mejoras en carga/enlace de clases, lo que ayuda a recortar pausas en cargas tipo servidor.

Mejor observabilidad (diagnosticar es más fácil)

  • JFR con muestreo cooperativo y trazas/tiempos de método: perfiles más precisos con menos impacto y más detalle para seguir qué hace tu app cuando “va justa”.

Si vienes de Java 21, también encontrarás

  • Stream Gatherers (operaciones intermedias personalizadas), JavaDoc en Markdownvariables anónimas con “_” y mejoras en hilos virtuales (sin “pinning” al sincronizar).

Listo para usarlo ya en tu IDE

  • En IntelliJ IDEA puedes descargar el JDK 25 desde el propio IDE y fijar el “Language level: 25 – Compact source files, module imports”; soporte pleno para las nuevas ayudas y quick-fixes.
  • Concurrencia estructurada (preview): organiza tareas concurrentes como una unidad, con código más legible y cancelación/errores mejor gestionados.
  • Patrones con tipos primitivos (preview): unifica cómo usamos instanceof y switch con primitivos, simplificando lógica y evitando conversiones innecesarias.
  • Stable Values (preview): objetos inmutables que la JVM puede optimizar como “constantes”, mejorando rendimiento en escenarios repetitivos.
  • Vector API (incubator): operaciones vectoriales que aprovechan SIMD del CPU para acelerar cálculos numéricos y de datos.
  • Seguridad: PEM encodings y KDF API: soporte nativo para formatos PEM y nuevas funciones de derivación de claves para fortalecer la gestión cripto.
  • AOT Command‑Line Ergonomics: facilidades para generar caches AOT y mejorar el tiempo de arranque sin complicar el flujo de build.
  • Calendario y soporte LTS: soporte de larga duración y actualizaciones periódicas que dan estabilidad para planificar la adopción.
AUTOR
Imagen de Luis

Luis

Brand, Marketing & Events manager
¿Te ha gustado esta entrada? Compártela

Noticias similares

Cloudflare: el secreto de seguridad tras 100 lámparas de lava

Cloudflare, utiliza un “muro” con 100 lámparas de lava y una cámara para capturar aleatoriedad del mundo físico y fortalecer ...

Acrobat Studio: el PDF entra en la era de la IA

ChatGPT 5 (GPT-5): novedades y usos

Cloudflare: el secreto de seguridad tras 100 lámparas de lava

Cloudflare, utiliza un “muro” con 100 lámparas de lava y una cámara para capturar aleatoriedad del mundo físico y fortalecer ...

Acrobat Studio: el PDF entra en la era de la IA

Scroll al inicio