{"id":105142,"date":"2022-09-20T21:36:59","date_gmt":"2022-09-20T19:36:59","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/vypusk-java-se-19"},"modified":"2022-09-20T21:36:59","modified_gmt":"2022-09-20T19:36:59","slug":"vypusk-java-se-19","status":"publish","type":"post","link":"https:\/\/prohoster.info\/ro\/blog\/news\/vypusk-java-se-19","title":{"rendered":"Lansarea Java SE 19","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Dup\u0103 \u0219ase luni de dezvoltare, compania Oracle a lansat platforma Java SE 19 (Java Platform, Standard Edition 19), a c\u0103rei implementare de referin\u021b\u0103 este un proiect deschis numit OpenJDK. Cu excep\u021bia elimin\u0103rii unor func\u021bii \u00eenvechite, Java SE 19 men\u021bine compatibilitatea \u00eenapoi cu versiunile anterioare ale platformei Java \u2014 majoritatea proiectelor Java scrise anterior vor func\u021biona f\u0103r\u0103 modific\u0103ri pe noua versiune. Versiunile gata de instalare ale Java SE 19 (JDK, JRE \u0219i Server JRE) sunt disponibile pentru Linux (x86_64, AArch64), Windows (x86_64) \u0219i macOS (x86_64, AArch64). Implementarea de referin\u021b\u0103 pentru Java 19, dezvoltat\u0103 \u00een cadrul proiectului OpenJDK, este complet deschis\u0103 sub licen\u021ba GPLv2 cu excep\u021bii GNU ClassPath care permit legarea dinamic\u0103 cu produsele comerciale.     <\/p>\n<p>Java SE 19 este clasificat ca o versiune cu un ciclu obi\u0219nuit de suport, actualiz\u0103rile pentru care vor fi lansate p\u00e2n\u0103 la urm\u0103toarea versiune. Pentru o ramur\u0103 cu ciclu lung de suport (LTS), se recomand\u0103 utilizarea Java SE 17, actualiz\u0103rile pentru care vor fi lansate p\u00e2n\u0103 \u00een 2029. Amintim c\u0103, \u00eencep\u00e2nd cu versiunea Java 10, proiectul a trecut la un nou proces de dezvoltare, care implic\u0103 un ciclu mai scurt de formare a noilor versiuni. Noile func\u021bionalit\u0103\u021bi sunt acum dezvoltate \u00eentr-o ramur\u0103 master care este actualizat\u0103 constant, \u00een care sunt incluse modific\u0103rile deja finalizate \u0219i care se bifurc\u0103 la fiecare \u0219ase luni \u00een ramuri pentru stabilizarea noilor versiuni.     <\/p>\n<p>Printre nout\u0103\u021bile din Java 19 se num\u0103r\u0103:  <\/p>\n<ul>\n<li class=\"l\"> Se ofer\u0103 suport preliminar pentru modele de \u00eenregistrare (record pattern), extinz\u00e2nd capacitatea de potrivire cu modele introdus\u0103 \u00een Java 16, care permite analizarea valorilor claselor de tip record. De exemplu:       record Point(int x, int y) {}       void printSum(Object o) {         if (o instanceof Point(int x, int y)) {             System.out.println(x+y);         }     }\n<li class=\"l\"> \u00cen versiunile pentru Linux, a fost ad\u0103ugat suport pentru arhitectura RISC-V.\n<li class=\"l\"> A fost ad\u0103ugat\u0103 suportul preliminar pentru API FFM (Foreign Function &amp; Memory), care permite interac\u021biunea aplica\u021biilor Java cu cod \u0219i date externe prin apelul func\u021biilor din biblioteci externe \u0219i accesul la memorie \u00een afara JVM.\n<li class=\"l\"> A fost ad\u0103ugat suport pentru fire virtuale, care sunt fire u\u0219oare ce simplific\u0103 considerabil scrierea \u0219i \u00eentre\u021binerea aplica\u021biilor multi-thread de \u00eenalt\u0103 performan\u021b\u0103.\n<li class=\"l\"> A fost propus\u0103 a patra realizare preliminar\u0103 a API-ului Vector, care ofer\u0103 func\u021bii pentru calcule vectoriale ce se efectueaz\u0103 folosind instruc\u021biuni vectoriale ale procesoarelor x86_64 \u0219i AArch64 \u0219i permit aplicarea simultan\u0103 a opera\u021biunilor la mai multe valori (SIMD). Spre deosebire de capacit\u0103\u021bile de vectorizare automat\u0103 a opera\u021biunilor scalare oferite de compilatorul JIT HotSpot, noul API permite gestionarea explicit\u0103 a vectoriz\u0103rii pentru procesarea paralel\u0103 a datelor.\n<li class=\"l\"> A fost ad\u0103ugat\u0103 a treia implementare experimental\u0103 a potrivirii prin model \u00een expresiile \u201eswitch\u201d, care permite utilizarea, \u00een etichetele \u201ecase\u201d, nu a valorilor exacte, ci a modelelor flexibile care acoper\u0103 o serie de valori, pentru care anterior era necesar\u0103 utilizarea unor lan\u021buri complexe de expresii \u201eif...else\u201d.          Object o = 123L;     String formatted = switch (o) {         case Integer i -&gt; String.format(\u201eint %d\u201d, i);         case Long l    -&gt; String.format(\u201elong %d\u201d, l);         case Double d  -&gt; String.format(\u201edouble %f\u201d, d);         case String s  -&gt; String.format(\u201eString %s\u201d, s);         default        -&gt; o.toString();     };\n<li class=\"l\"> A fost ad\u0103ugat un API experimental pentru paralelismul structurabil, care simplific\u0103 dezvoltarea aplica\u021biilor multi-thread prin gestionarea mai multor sarcini desf\u0103\u0219urate \u00een fluxuri diferite ca un singur bloc.          <\/ul>\n<p>Sursa: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=57808\">opennet.ro<\/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 19 (Java Platform, Standard Edition 19), \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 19 \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-105142","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2.1 - 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 19 (Java Platform, Standard Edition 19), \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\/ro\/blog\/news\/vypusk-java-se-19\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"ro_RO\" \/>\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 19 | 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 19 (Java Platform, Standard Edition 19), \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\/ro\/blog\/news\/vypusk-java-se-19\" \/>\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-09-20T19:36:59+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2022-09-20T19:36:59+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\udd47Lansarea Java SE 19 | ProHoster","description":"Dup\u0103 \u0219ase luni de dezvoltare, Oracle a lansat platforma Java SE 19 (Java Platform, Standard Edition 19), utiliz\u00e2nd ca realizare de referin\u021b\u0103 proiectul deschis OpenJDK.","canonical_url":"https:\/\/prohoster.info\/ro\/blog\/news\/vypusk-java-se-19","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"ro_RO","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 19 | 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 19 (Java Platform, Standard Edition 19), \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\/ro\/blog\/news\/vypusk-java-se-19","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-09-20T19:36:59+00:00","article:modified_time":"2022-09-20T19:36:59+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":[],"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/105142","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/comments?post=105142"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/105142\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/media?parent=105142"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/categories?post=105142"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/tags?post=105142"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}