{"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\/sk\/blog\/news\/vypusk-java-se-19","title":{"rendered":"Vydanie Java SE 19","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Po \u0161iestich mesiacoch v\u00fdvoja spole\u010dnos\u0165 Oracle uviedla platformu Java SE 19 (Java Platform, Standard Edition 19), pri\u010dom ako etal\u00f3nna implement\u00e1cia sa pou\u017e\u00edva otvoren\u00fd projekt OpenJDK. Okrem odstr\u00e1nenia niektor\u00fdch zastaran\u00fdch funkci\u00ed v Java SE 19 zostala sp\u00e4tn\u00e1 kompatibilita s predch\u00e1dzaj\u00facimi vydaniami platformy Java \u2014 v\u00e4\u010d\u0161ina u\u017e predt\u00fdm nap\u00edsan\u00fdch Java projektov bude fungova\u0165 bez zmien pri sp\u00fa\u0161\u0165an\u00ed na novej verzii. Pripraven\u00e9 na in\u0161tal\u00e1ciu zostavy Java SE 19 (JDK, JRE a Server JRE) s\u00fa k dispoz\u00edcii pre Linux (x86_64, AArch64), Windows (x86_64) a macOS (x86_64, AArch64). Etal\u00f3nna implement\u00e1cia Java 19 vyvinut\u00e1 v r\u00e1mci projektu OpenJDK je plne otvoren\u00e1 pod licenciou GPLv2 s v\u00fdnimkami GNU ClassPath, ktor\u00e9 umo\u017e\u0148uj\u00fa dynamick\u00e9 prepojenie s komer\u010dn\u00fdmi produktmi.     <\/p>\n<p>Java SE 19 patr\u00ed do kateg\u00f3rie vydan\u00ed s be\u017enou dobou podpory, aktualiz\u00e1cie bud\u00fa vyd\u00e1van\u00e9 do nasleduj\u00faceho vydania. Ako vetvu s dlhodobou podporou (LTS) by sa mala pou\u017e\u00edva\u0165 Java SE 17, aktualiz\u00e1cie pre ktor\u00fa bud\u00fa vyd\u00e1van\u00e9 do roku 2029. Pripom\u00edname, \u017ee od vydania Java 10 pre\u0161iel projekt na nov\u00fd proces v\u00fdvoja, ktor\u00fd zah\u0155\u0148a krat\u0161\u00ed cyklus vytv\u00e1rania nov\u00fdch vydan\u00ed. Nov\u00e9 funkcie sa teraz vyv\u00edjaj\u00fa v jednej neust\u00e1le aktualizovanej master vetve, do ktorej sa prid\u00e1vaj\u00fa u\u017e hotov\u00e9 zmeny a od ktorej sa ka\u017ed\u00fdch \u0161es\u0165 mesiacov odp\u00e1jaj\u00fa vetvy na stabiliz\u00e1ciu nov\u00fdch vydan\u00ed.     <\/p>\n<p>Zo noviniek Java 19 m\u00f4\u017eeme spomen\u00fa\u0165:  <\/p>\n<ul>\n<li class=\"l\"> Navrhnut\u00e1 predbe\u017en\u00e1 podpora vzorov z\u00e1znamov (record pattern), ktor\u00e1 roz\u0161iruje mo\u017enos\u0165 porovn\u00e1vania zaveden\u00fa v Java 16 a umo\u017e\u0148uje anal\u00fdzu hodn\u00f4t tried typu record. Napr\u00edklad:       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\"> V zostav\u00e1ch pre Linux je zabezpe\u010den\u00e1 podpora architekt\u00fary RISC-V.\n<li class=\"l\"> Pridan\u00e1 predbe\u017en\u00e1 podpora API FFM (Foreign Function &amp; Memory), ktor\u00e1 umo\u017e\u0148uje interakciu Java programov s vonkaj\u0161\u00edm k\u00f3dom a d\u00e1tami pomocou volania funkci\u00ed z extern\u00fdch kni\u017en\u00edc a pr\u00edstupu k pam\u00e4ti mimo JVM.\n<li class=\"l\"> Pridan\u00e1 podpora virtu\u00e1lnych tokov, ktor\u00e9 predstavuj\u00fa \u013eahk\u00e9 vl\u00e1kna, v\u00fdrazne u\u013eah\u010duj\u00face p\u00edsanie a \u00fadr\u017ebu vysoko v\u00fdkonn\u00fdch viacvl\u00e1knov\u00fdch aplik\u00e1ci\u00ed.\n<li class=\"l\"> Predlo\u017een\u00e1 \u0161tvrt\u00e1 predbe\u017en\u00e1 realiz\u00e1cia API Vector, ktor\u00e1 poskytuje funkcie pre vektorov\u00e9 v\u00fdpo\u010dty, ktor\u00e9 s\u00fa vykon\u00e1van\u00e9 pomocou vektorov\u00fdch in\u0161trukci\u00ed procesorov x86_64 a AArch64 a umo\u017e\u0148uj\u00fa s\u00fa\u010dasne aplikova\u0165 oper\u00e1cie na viacer\u00e9 hodnoty (SIMD). Na rozdiel od mo\u017enosti automatickej vektor\u00e1cie skal\u00e1rnych oper\u00e1ci\u00ed poskytovan\u00fdch JIT kompil\u00e1torom HotSpot, nov\u00e9 API pon\u00faka mo\u017enos\u0165 explicitne riadi\u0165 vektorovanie pre paraleln\u00e9 spracovanie \u00fadajov.\n<li class=\"l\"> Pridan\u00e1 tretia experiment\u00e1lna implement\u00e1cia vzorov\u00fdch porovnan\u00ed v pr\u00edkazoch \u201eswitch\u201c, ktor\u00e1 umo\u017e\u0148uje vo \u0161t\u00edtkoch \u201ecase\u201c pou\u017e\u00edva\u0165 nie presn\u00e9 hodnoty, ale flexibiln\u00e9 vzory pokr\u00fdvaj\u00face viacero hodn\u00f4t, pre ktor\u00e9 sa predt\u00fdm museli pou\u017e\u00edva\u0165 zlo\u017eit\u00fdch re\u0165azce pr\u00edkazov \u201eif\u2026else\u201c. 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\"> Pridan\u00e9 experiment\u00e1lne API pre \u0161trukt\u00farovan\u00fd paralelizmus, ktor\u00e9 zjednodu\u0161uje v\u00fdvoj viaccievkov\u00fdch aplik\u00e1ci\u00ed spracovan\u00edm viacer\u00fdch \u00faloh vykon\u00e1van\u00fdch v r\u00f4znych vl\u00e1knach ako jedn\u00e9ho bloku.          <\/ul>\n<p>Zdroj: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=57808\">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 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.4 - 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\/sk\/blog\/news\/vypusk-java-se-19\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"sk_SK\" \/>\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\/sk\/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\udd47Vydanie Java SE 19 | ProHoster","description":"Po \u0161iestich mesiacoch v\u00fdvoja spolo\u010dnos\u0165 Oracle vydala platformu Java SE 19 (Java Platform, Standard Edition 19), pri\u010dom ako etal\u00f3nna realiz\u00e1cia sl\u00fa\u017ei otvoren\u00fd projekt OpenJDK.","canonical_url":"https:\/\/prohoster.info\/sk\/blog\/news\/vypusk-java-se-19","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sk_SK","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\/sk\/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\/sk\/wp-json\/wp\/v2\/posts\/105142","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/comments?post=105142"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/posts\/105142\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/media?parent=105142"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/categories?post=105142"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sk\/wp-json\/wp\/v2\/tags?post=105142"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}