Hace mucho que no pispeo las nuevas características de java, desde la 11 más o menos. Por lo tanto he resuelto hacer un post por cada nueva característica.
Java 12 (marzo 2019):
- Expresiones `switch` (vista previa): Permiten utilizar `switch` como una expresión, simplificando la sintaxis y reduciendo errores.
- API de Compilación de Resúmenes de Archivos: Facilita la generación de resúmenes hash para archivos y directorios.
- Colectores de Teeing: Introducción de un nuevo colector en la API de Streams que permite combinar dos colecciones en una.
Java 13 (septiembre 2019):
- Bloques de texto (vista previa): Permiten manejar cadenas de texto multilínea de manera más sencilla y legible.
- Mejoras en ZGC: El Garbage Collector Z se ha mejorado para devolver memoria al sistema operativo más eficientemente.
Java 14 (marzo 2020):
- Clases de registros (vista previa): Introducción de `record` para simplificar la creación de clases que son principalmente contenedores de datos.
- Coincidencia de patrones para `instanceof` (vista previa): Simplifica el uso de `instanceof` al permitir la asignación directa de la variable si la comprobación es exitosa.
Java 15 (septiembre 2020):
- Clases selladas (vista previa): Permiten restringir qué clases pueden heredar de una clase o implementar una interfaz, mejorando el control sobre la jerarquía de clases.
- Eliminación de Nashorn: El motor JavaScript Nashorn fue eliminado del JDK.
Java 16 (marzo 2021):
- Clases de registros: La funcionalidad de `record` se estabilizó, facilitando la creación de clases inmutables.
- API de Acceso a Memoria Externa (incubadora): Proporciona una forma segura y eficiente de acceder a memoria fuera del montón de Java.
Java 17 (septiembre 2021):
- Coincidencia de patrones para `switch` (vista previa): Extiende la coincidencia de patrones al `switch`, permitiendo casos basados en el tipo del argumento.
- Funciones de clase sellada: Las clases selladas se estabilizaron, ofreciendo un control más preciso sobre la herencia.
Java 18 (marzo 2022):
- API de Servidor Web Simple: Introduce una API para crear servidores web mínimos, útiles para pruebas y propósitos educativos.
- Mejoras en la API de Caracteres Unicode: Actualizaciones para soportar las últimas versiones del estándar Unicode.
Java 19 (septiembre 2022):
- API de Vectores (incubadora): Proporciona una API para operaciones vectoriales que pueden ser optimizadas en hardware compatible.
- Patrones de registros (vista previa): Extiende la coincidencia de patrones para trabajar con componentes de registros.
Java 20 (marzo 2023):
- Extensiones de la API de Memoria y Función Externa (vista previa): Mejoras en la API para interactuar con memoria y funciones externas de manera más segura y eficiente.
- Mejoras en la API de Vectores: Continúan las mejoras en la API de Vectores para un mejor rendimiento y soporte de hardware.
Java 21 (septiembre 2023):
- Clases sin nombre y métodos principales sin nombre (vista previa): Simplifica la creación de programas pequeños al eliminar la necesidad de clases y métodos principales explícitos.
- Mejoras en la coincidencia de patrones: Ampliaciones adicionales para la coincidencia de patrones en diversas estructuras del lenguaje.
Este es el resumen. Vamos a ver como me va. Si quieren que haga un post para otra característica, escriban en los comentarios.