Java Development Kit (JDK) 23 se profile à l'horizon, la version candidate étant désormais disponible et sa disponibilité générale prévue pour le 17 septembre 2024. Cette version apporte une variété de nouvelles fonctionnalités et améliorations qui continuent de faire évoluer le langage de programmation Java, bien qu'il soit Il est important de noter que JDK 23 est une version non LTS (Long Term Support), offrant seulement six mois de support d'Oracle. Voici un aperçu des ajouts et changements les plus notables dans le JDK 23.
Valeurs étendues (troisième aperçu): les valeurs étendues, introduites dans les versions précédentes, facilitent le partage de données immuables au sein des threads et avec les threads enfants. Cette fonctionnalité est particulièrement avantageuse lorsqu'elle est utilisée avec des threads virtuels et une concurrence structurée, réduisant ainsi la surcharge associée aux valeurs locales des threads. Dans JDK 23, la méthode ScopedValue.callWhere voit une mise à jour, introduisant une nouvelle interface fonctionnelle qui simplifie la gestion des exceptions, tandis que la méthode ScopeValue.getWhere a été supprimée.
Concurrence structurée (troisième aperçu): la concurrence structurée vise à simplifier la programmation simultanée en traitant les tâches liées sur plusieurs threads comme une seule unité de travail. Cette amélioration améliore la gestion des erreurs et l'observabilité, réduisant ainsi les risques tels que les fuites de threads et les délais d'annulation. Il s'agit du troisième aperçu de la concurrence structurée, qui continue de s'appuyer sur ses itérations précédentes.
Corps de constructeur flexibles (deuxième aperçu): Cette fonctionnalité, anciennement connue sous le nom de « instructions avant super(…) », permet aux constructeurs d'initialiser les champs avant d'invoquer un constructeur de superclasse. Ce changement donne aux développeurs plus de liberté pour structurer la logique des constructeurs, rationalisant le processus de création de classes tout en conservant l'ordre d'exécution descendant des constructeurs.
Classes et méthodes d'instance déclarées implicitement: conçue pour rendre Java plus accessible aux débutants, cette fonctionnalité permet des déclarations de classes plus simples et une extension plus facile des programmes. JDK 23 introduit des améliorations supplémentaires, notamment l'importation automatique de trois méthodes statiques pour les E/S de texte et toutes les classes et interfaces publiques de niveau supérieur des packages exportés par le module java.base.
Déclarations d'importation de modules (aperçu): Cette nouvelle fonctionnalité permet d'importer des modules entiers avec une seule déclaration, simplifiant ainsi l'utilisation des bibliothèques modulaires. Il vise à rendre Java plus convivial pour les débutants et à réduire l'encombrement de plusieurs instructions d'importation lors de l'utilisation de différentes parties de l'API d'un module.
Commentaires sur la documentation Markdown: JDK 23 introduit la possibilité d'écrire des commentaires JavaDoc à l'aide de Markdown, rendant la documentation plus lisible et plus facile à écrire. Ce changement devrait rationaliser le processus de création et de maintenance de la documentation de l'API.
Z Garbage Collector (ZGC) en mode générationnel: le mode par défaut de ZGC sera désormais générationnel, se concentrant sur une collecte plus fréquente de jeunes objets pour améliorer les performances des applications. Le mode non générationnel sera obsolète, signalant une évolution vers une approche plus moderne de la collecte des déchets.
API Vector (Huitième Incubation): Poursuivant son développement, l'API Vector permet aux développeurs d'exprimer des calculs vectoriels qui se compilent efficacement sur différentes architectures de processeur. Cette incubation vise à fournir une API fiable et orientée performances pour le traitement vectoriel.
Stream Gatherers (deuxième aperçu): cette amélioration de l'API Stream introduit des opérations intermédiaires personnalisées, rendant les pipelines de flux plus flexibles et capables de gérer des flux infinis.
API Class-File: une nouvelle API pour le traitement des fichiers de classe est en cours d'introduction, s'alignant sur la spécification Java Virtual Machine. Cette API est destinée à remplacer la bibliothèque ASM interne, offrant une approche plus standardisée du traitement des fichiers de classe.
Types primitifs dans les modèles, instanceof et switch (aperçu): Cette fonctionnalité améliore la correspondance de modèles en permettant aux types primitifs dans des contextes de modèles, en étendant les instructions instanceof et switch pour fonctionner avec tous les types primitifs.
Java 23 は、最新のプログラミング実践の最前線に留まりたいと考えている開発者にとって不可欠なアップデートになりつつあります。経験豊富なプロフェッショナルであっても、Java を始めたばかりであっても、これらの新機能はすべての人に何かを提供します。
タイトル | リンク | |
---|---|---|
# ? Java で正規表現をマスターする: 開発者向け必須ガイド | 読む | |
?すべての開発者のための 9 つの Java トリック** | 読む | |
Java を使用したオブジェクト指向プログラミング (OOP) の概念を探る** | 読む |
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!