Avec effet au 18 mars 2025, Oracle a lancé Java 24. Les nouvelles fonctionnalités apportent des améliorations significatives en termes de performance, de stabilité et de sécurité. En savoir plus sur les licences et les nouvelles fonctionnalités de Java 24.
Qu’est-ce que Java 24 ?
Java 24 (Oracle JDK 24) est la dernière version du premier langage de programmation et de la première plate-forme de développement au monde. Java permet aux développeurs de créer des applications de niveau entreprise, critiques et basées sur l’IA à grande échelle. Les nouvelles versions sont publiées régulièrement tous les six mois, en mars et en septembre.
Licence
Oracle propose deux options principales pour l’octroi de licences Java :
Fonction | Oracle No-Fee Terms and Conditions (NFTC) | Java SE Universal Subscription |
Coûts | Gratuit pour l’utilisation en production et la redistribution | Abonnement payant basé sur le nombre d’employés |
Production Utilisation | Oui | Oui |
Mises à jour | Plus de mises à jour pour le JDK 24 à partir de septembre 2025 avec la sortie du JDK 25. | Mises à jour continues et accès à toutes les améliorations de performance, de stabilité et de sécurité |
Support | Pas d’accès aux services de support d’Oracle | Support complet, y compris un accès 24h/24 et 7j/7 à My Oracle Support |
Outils supplémentaires | Aucun | Inclut Oracle GraalVM, Java SE Subscription Enterprise Performance Pack, et Java Management Service |
Licence et déploiement | Gratuit pour la production et la redistribution | Licence et support pour Java SE sur les ordinateurs de bureau, les serveurs cloud |
Nouvelles fonctionnalités de la version 24 :
Caractéristiques linguistiques
- Types primitifs dans les patterns, instanceof et switch (deuxième aperçu) : Améliore la reconnaissance des formes en supprimant les restrictions sur les types primitifs (les types de données les plus simples de Java, qui ne sont pas des objets ; par exemple : int, long, float, etc.), ce qui rend le langage plus cohérent et plus expressif.
- Corps de constructeurs flexibles (troisième aperçu) : Introduit différentes phases de prologue et d’épilogue dans les constructeurs, ce qui améliore la fiabilité du code.
- Déclarations d’importation de modules (deuxième aperçu) : Permet d’importer rapidement et facilement tous les packages exportés par un module.
- Fichiers sources simples et méthodes principales d’instance (Quatrième aperçu) : Fournit une introduction en douceur à la programmation Java pour les débutants.
Bibliothèques
- Stream Gatherer : Étend l’API de flux pour prendre en charge les opérations intermédiaires personnalisées.
- API de fichier de classe : Fournit une API standard pour l’analyse syntaxique, la génération et la transformation des fichiers de classes Java.
- Scoped Values (Quatrième aperçu) : Permet le partage de données invariables au sein des threads et entre eux.
- API vecteur (Neuvième incubateur) : Introduit une API pour exprimer les calculs vectoriels.
- Simultanéité structurée (quatrième aperçu) : Simplifie la programmation simultanée via une nouvelle API de simultanéité structurée.
Bibliothèques de sécurité
- API de fonction de dérivation de clés (aperçu) : Fournit une sécurité cryptographique pour les données en transit.
- Mécanisme d’encapsulation de clés à base de treillis de modules résistant aux quanta : Fournit une implémentation du mécanisme d’encapsulation de clés à base de treillis de modules résistant aux quanta (ML-KEM).
- Algorithme de signature numérique à base de treillis de modules résistant aux quanta : Fournit une implémentation de l’algorithme de signature numérique à base de treillis de modules résistant aux quanta (ML-DSA).
Outils
- Lier des images d’exécution sans JMOD : Permet à l’outil jlink de créer des images d’exécution personnalisées sans utiliser de fichiers JMOD.
Mises à jour de performance et de durée
- En-têtes d’objets compacts (Expérimental) : Réduit la taille des en-têtes d’objets dans la JVM HotSpot.
- Late Barrier Extension for G1 : Reporte l’extension des barrières du Garbage Collector G1 à une date ultérieure dans le pipeline de compilation du JIT C2.
- Chargement et liaison anticipés des classes : Rend les classes d’une application immédiatement disponibles dans un état chargé et lié.
- ZGC : Supprime le mode non générationnel : Supprime le mode non générationnel du Z Garbage Collector (ZGC).
- Synchroniser les threads virtuels sans épinglage : Étend l’évolutivité du code Java et des bibliothèques qui utilisent des méthodes et des instructions synchronisées.
Code source
- Shenandoah générationnel (expérimental) : Ajoute des fonctionnalités de collecte générative expérimentale au collecteur d’ordures Shenandoah.
- Suppression du port Windows 32 bits x86 : Supprime le code source et le support de compilation pour le port Windows 32 bits x86.
- Rejeter le port x86 32 bits pour le supprimer : Le port x86 32 bits est rejeté afin d’être supprimé dans une version future.
Plus d’informations :
Téléchargez Java 24 ici : https://www.oracle.com/be/java/technologies/downloads/.
Annonce de l’événement : https://www.oracle.com/be/news/announcement/oracle-releases-java-24-2025-03-18/.
En savoir plus sur l’abonnement universel (Universal Subscription) à Oracle Java SE : https://www.oracle.com/java/java-se-subscription/.
Pour en savoir plus sur Oracle, veuillez visiter : https://www.schneider.im/fr/logiciels/oracle.
Contactez-nous pour obtenir de l’aide pour votre licence Oracle et demandez un devis dès aujourd’hui.