{"id":103599,"date":"2022-03-23T15:37:14","date_gmt":"2022-03-23T13:37:14","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/vypusk-java-se-18"},"modified":"2022-03-23T15:37:14","modified_gmt":"2022-03-23T13:37:14","slug":"vypusk-java-se-18","status":"publish","type":"post","link":"https:\/\/prohoster.info\/fr\/blog\/news\/vypusk-java-se-18","title":{"rendered":"Sortie de Java SE 18","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Apr\u00e8s six mois de d\u00e9veloppement, Oracle a lanc\u00e9 la plateforme Java SE 18 (Java Platform, Standard Edition 18), dont la r\u00e9alisation de r\u00e9f\u00e9rence est bas\u00e9e sur le projet open source OpenJDK. \u00c0 l'exception de la suppression de certaines fonctionnalit\u00e9s obsol\u00e8tes, Java SE 18 maintient la compatibilit\u00e9 descendante avec les versions ant\u00e9rieures de la plateforme Java \u2014 la plupart des projets Java pr\u00e9c\u00e9demment \u00e9crits fonctionneront sans modifications sur la nouvelle version. Des builds pr\u00e9configur\u00e9s de Java SE 18 (JDK, JRE et Server JRE) sont disponibles pour Linux (x86_64, AArch64), Windows (x86_64) et macOS (x86_64, AArch64). La r\u00e9alisation de r\u00e9f\u00e9rence de Java 18, d\u00e9velopp\u00e9e dans le cadre du projet OpenJDK, est enti\u00e8rement ouverte sous licence GPLv2 avec des exceptions GNU ClassPath, permettant le liaison dynamique avec des produits commerciaux.     <\/p>\n<p>Java SE 18 est class\u00e9 parmi les versions \u00e0 cycle de support standard, avec des mises \u00e0 jour publi\u00e9es jusqu'\u00e0 la prochaine version. La version \u00e0 long terme de support (LTS) \u00e0 utiliser est Java SE 17, pour laquelle des mises \u00e0 jour seront disponibles jusqu'en 2029. \u00c0 rappeler qu'\u00e0 partir de la version Java 10, le projet a adopt\u00e9 un nouveau processus de d\u00e9veloppement, impliquant un cycle de cr\u00e9ation de nouvelles versions plus court. La nouvelle fonctionnalit\u00e9 est d\u00e9sormais d\u00e9velopp\u00e9e dans une branche principale continuellement mise \u00e0 jour, qui inclut les modifications pr\u00eates et \u00e0 partir de laquelle des branches pour stabiliser les nouvelles versions sont d\u00e9riv\u00e9es tous les six mois.     <\/p>\n<p>Parmi les nouveaut\u00e9s de Java 18, on peut noter :  <\/p>\n<ul>\n<li class=\"l\"> Par d\u00e9faut, le codage UTF-8 est activ\u00e9. Les API Java qui traitent des donn\u00e9es textuelles en tenant compte du codage des caract\u00e8res utiliseront d\u00e9sormais par d\u00e9faut UTF-8 sur toutes les plateformes, ind\u00e9pendamment des param\u00e8tres syst\u00e8me et de la locale d\u00e9finie. Pour revenir au comportement pr\u00e9c\u00e9dent, o\u00f9 le codage est choisi en fonction de la locale syst\u00e8me, vous pouvez utiliser le param\u00e8tre \u00ab -Dfile.encoding=COMPAT \u00bb.\n<li class=\"l\"> Le package com.sun.net.httpserver est inclus, comprenant l'outil jwebserver et une API de biblioth\u00e8que qui met en \u0153uvre un serveur http simple pour servir du contenu statique (les gestionnaires de type CGI et servlet ne sont pas pris en charge). Le serveur http int\u00e9gr\u00e9 n'est pas optimis\u00e9 pour les charges de travail et ne prend pas en charge la gestion des acc\u00e8s et l'authentification, car il est principalement destin\u00e9 \u00e0 un usage lors du d\u00e9veloppement pour cr\u00e9er des prototypes, d\u00e9boguer et tester des projets.\n<li class=\"l\"> JavaDoc a impl\u00e9ment\u00e9 la prise en charge de la balise \u00ab @snippet \u00bb pour int\u00e9grer des exemples de travail et des fragments de code dans la documentation de l'API, o\u00f9 des outils peuvent \u00eatre appliqu\u00e9s pour v\u00e9rifier leur validit\u00e9, mettre en surbrillance la syntaxe et s'int\u00e9grer aux IDE.\n<li class=\"l\"> L'impl\u00e9mentation de l'API java.lang.reflect (Core Reflection) a \u00e9t\u00e9 r\u00e9vis\u00e9e pour obtenir des informations sur les m\u00e9thodes, champs et constructeurs des classes, ainsi que pour acc\u00e9der \u00e0 la structure interne des classes. L'API elle-m\u00eame est rest\u00e9e inchang\u00e9e, mais est d\u00e9sormais impl\u00e9ment\u00e9e via des descripteurs de m\u00e9thodes (method handles) fournis par le module java.lang.invoke, au lieu d'utiliser des g\u00e9n\u00e9rateurs de bytecode. Ce changement a permis d'unifier les impl\u00e9mentations de java.lang.reflect et java.lang.invoke et de simplifier leur maintenance.\n<li class=\"l\"> Une troisi\u00e8me pr\u00e9-impl\u00e9mentation de l'API Vector a \u00e9t\u00e9 propos\u00e9e, offrant des fonctions pour les calculs vectoriels ex\u00e9cut\u00e9s \u00e0 l'aide des instructions vectorielles des processeurs x86_64 et AArch64, permettant d'appliquer simultan\u00e9ment des op\u00e9rations \u00e0 plusieurs valeurs (SIMD). Contrairement aux capacit\u00e9s d'auto-vectorisation des op\u00e9rations scalaires fournies par le compilateur JIT HotSpot, la nouvelle API permet de g\u00e9rer explicitement la vectorisation pour le traitement parall\u00e8le des donn\u00e9es.\n<li class=\"l\"> Une interface SPI (service-provider interface) a \u00e9t\u00e9 ajout\u00e9e pour la r\u00e9solution des noms d'h\u00f4tes et <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/fr\/lir\/ipv4\/\"   title=\"adresses IP\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"851\">adresses IP<\/a>, permettant d'utiliser dans java.net.InetAddress des r\u00e9solveurs alternatifs qui ne sont pas li\u00e9s aux gestionnaires propos\u00e9s par le syst\u00e8me d'exploitation.\n<li class=\"l\"> Une deuxi\u00e8me version pr\u00e9liminaire de l'API Foreign Function &amp; Memory a \u00e9t\u00e9 propos\u00e9e, permettant aux applications d'interagir avec le code et les donn\u00e9es situ\u00e9s en dehors de l'environnement d'ex\u00e9cution Java. La nouvelle API permet d'appeler efficacement des fonctions qui ne s'ex\u00e9cutent pas dans la JVM et d'acc\u00e9der \u00e0 la m\u00e9moire non g\u00e9r\u00e9e par la JVM. Par exemple, il est possible d'appeler des fonctions \u00e0 partir de biblioth\u00e8ques partag\u00e9es externes et d'acc\u00e9der aux donn\u00e9es d'un processus sans utiliser JNI.\n<li class=\"l\"> Une deuxi\u00e8me impl\u00e9mentation exp\u00e9rimentale du motif de correspondance a \u00e9t\u00e9 ajout\u00e9e dans les expressions \u00ab switch \u00bb, permettant d'utiliser des mod\u00e8les flexibles dans les \u00e9tiquettes \u00ab case \u00bb au lieu de valeurs pr\u00e9cises, couvrant ainsi une s\u00e9rie de valeurs pour lesquelles des cha\u00eenes d'expressions encombrantes \u00ab if...else \u00bb \u00e9taient auparavant n\u00e9cessaires.          Object o = 123L;     String formatted = switch (o) {         case Integer i -&gt; String.format(\"int %d\", i);         case Long l    -&gt; String.format(\"long %d\", l);         case Double d  -&gt; String.format(\"double %f\", d);         case String s  -&gt; String.format(\"String %s\", s);         default        -&gt; o.toString();     };\n<li class=\"l\"> Le m\u00e9canisme de finalisation a \u00e9t\u00e9 d\u00e9clar\u00e9 obsol\u00e8te et sera d\u00e9sactiv\u00e9 dans l'une des prochaines versions, ainsi que les m\u00e9thodes associ\u00e9es, comme Object.finalize(), Enum.finalize(), Runtime.runFinalization() et System.runFinalization().\n<li class=\"l\"> Les collecteurs de d\u00e9chets ZGC (Z Garbage Collector), SerialGC et ParallelGC ont impl\u00e9ment\u00e9 le support de la d\u00e9duplication des cha\u00eenes.    <\/ul>\n<p>Source : <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=56899\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u043e\u0441\u043b\u0435 \u0448\u0435\u0441\u0442\u0438 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Oracle \u0432\u044b\u043f\u0443\u0441\u0442\u0438\u043b\u0430 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0443 Java SE 18 (Java Platform, Standard Edition 18), \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u044d\u0442\u0430\u043b\u043e\u043d\u043d\u043e\u0439 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u0439 \u043f\u0440\u043e\u0435\u043a\u0442 OpenJDK. \u0417\u0430 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435\u043c \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u044f \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0443\u0441\u0442\u0430\u0440\u0435\u0432\u0448\u0438\u0445 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0435\u0439 \u0432 Java SE 18 \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0430 \u043e\u0431\u0440\u0430\u0442\u043d\u0430\u044f \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u044c \u0441 \u043f\u0440\u043e\u0448\u043b\u044b\u043c\u0438 \u0432\u044b\u043f\u0443\u0441\u043a\u0430\u043c\u0438 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u044b Java &#8212; \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u043e \u0440\u0430\u043d\u0435\u0435 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043d\u044b\u0445 Java-\u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432 \u0431\u0435\u0437 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439 \u0431\u0443\u0434\u0443\u0442 \u0440\u0430\u0431\u043e\u0442\u043e\u0441\u043f\u043e\u0441\u043e\u0431\u043d\u044b \u043f\u0440\u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0435 \u043f\u043e\u0434 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-103599","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041f\u043e\u0441\u043b\u0435 \u0448\u0435\u0441\u0442\u0438 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Oracle \u0432\u044b\u043f\u0443\u0441\u0442\u0438\u043b\u0430 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0443 Java SE 18 (Java Platform, Standard Edition 18), \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u044d\u0442\u0430\u043b\u043e\u043d\u043d\u043e\u0439 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u0439 \u043f\u0440\u043e\u0435\u043a\u0442 OpenJDK.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/fr\/blog\/news\/vypusk-java-se-18\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"fr_FR\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0412\u044b\u043f\u0443\u0441\u043a Java SE 18 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u043e\u0441\u043b\u0435 \u0448\u0435\u0441\u0442\u0438 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Oracle \u0432\u044b\u043f\u0443\u0441\u0442\u0438\u043b\u0430 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0443 Java SE 18 (Java Platform, Standard Edition 18), \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u044d\u0442\u0430\u043b\u043e\u043d\u043d\u043e\u0439 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u0439 \u043f\u0440\u043e\u0435\u043a\u0442 OpenJDK.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/fr\/blog\/news\/vypusk-java-se-18\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2022-03-23T13:37:14+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2022-03-23T13:37:14+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Lancement de Java SE 18 | ProHoster","description":"Apr\u00e8s six mois de d\u00e9veloppement, Oracle a lanc\u00e9 la plateforme Java SE 18 (Java Platform, Standard Edition 18), dont la r\u00e9f\u00e9rence est le projet open-source OpenJDK.","canonical_url":"https:\/\/prohoster.info\/fr\/blog\/news\/vypusk-java-se-18","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"fr_FR","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0412\u044b\u043f\u0443\u0441\u043a Java SE 18 | ProHoster","og:description":"\u041f\u043e\u0441\u043b\u0435 \u0448\u0435\u0441\u0442\u0438 \u043c\u0435\u0441\u044f\u0446\u0435\u0432 \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u044f Oracle \u0432\u044b\u043f\u0443\u0441\u0442\u0438\u043b\u0430 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c\u0443 Java SE 18 (Java Platform, Standard Edition 18), \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u044d\u0442\u0430\u043b\u043e\u043d\u043d\u043e\u0439 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u0439 \u043f\u0440\u043e\u0435\u043a\u0442 OpenJDK.","og:url":"https:\/\/prohoster.info\/fr\/blog\/news\/vypusk-java-se-18","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2022-03-23T13:37:14+00:00","article:modified_time":"2022-03-23T13:37:14+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"103599","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2022-03-23 13:38:15","updated":"2026-02-08 20:40:19","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/103599","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/comments?post=103599"}],"version-history":[{"count":1,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/103599\/revisions"}],"predecessor-version":[{"id":158042,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/posts\/103599\/revisions\/158042"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/media?parent=103599"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/categories?post=103599"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/fr\/wp-json\/wp\/v2\/tags?post=103599"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}