{"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\/sl\/blog\/news\/vypusk-java-se-18","title":{"rendered":"Izlazak Java SE 18","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Po \u0161estih mesecih razvoja je podjetje Oracle izdalo platformo Java SE 18 (Java Platform, Standard Edition 18), katere referen\u010dna implementacija je odprti projekt OpenJDK. Razen odstranitve nekaterih zastarelih mo\u017enosti v Java SE 18 je ohranjena povezanost z prej\u0161njimi razli\u010dicami platforme Java \u2014 ve\u010dina prej napisanih Java projektov bo brez sprememb delovala pod novo razli\u010dico. Pripravljene razli\u010dice Java SE 18 (JDK, JRE in Server JRE) so na voljo za Linux (x86_64, AArch64), Windows (x86_64) in macOS (x86_64, AArch64). Referen\u010dna implementacija Java 18, razvita v okviru projekta OpenJDK, je popolnoma odprta pod licenco GPLv2 z izjemami GNU ClassPath, ki omogo\u010dajo dinami\u010dno povezovanje s komercialnimi izdelki.     <\/p>\n<p>Java SE 18 je uvr\u0161\u010dena v kategorijo izdaj z obi\u010dajno podporo, nadgradnje zanje bodo izhajale do naslednje izdaje. Kot veja z dolgo podporo (LTS) je treba uporabiti Java SE 17, nadgradnje zanje bodo izhajale do leta 2029. Spomnimo, da je projekt od izdaje Java 10 pre\u0161el na nov proces razvoja, ki predvideva kraj\u0161i cikel oblikovanja novih izdaj. Nova funkcionalnost se zdaj razvija v eni nenehno posodobljeni master veji, v katero se vklju\u010dujejo \u017ee pripravljene spremembe in od katere se enkrat na \u0161est mesecev odbijejo veje za stabilizacijo novih izdaj.     <\/p>\n<p>Med novostmi Java 18 lahko omenimo:  <\/p>\n<ul>\n<li class=\"l\"> Privzeto je uporabljena kodna stran UTF-8. Java API, ki obdelujejo besedilne podatke ob upo\u0161tevanju kodne strani, bodo zdaj privzeto uporabljali UTF-8 na vseh platformah, ne glede na sistemske nastavitve in nastavljeno lokalizacijo. Za vra\u010danje starega vedenja, pri katerem se kodna stran izbira ob upo\u0161tevanju sistemske lokalizacije, lahko uporabite parameter \u201e-Dfile.encoding=COMPAT\u201c.\n<li class=\"l\"> Vklju\u010duje paket com.sun.net.httpserver, ki vsebuje orodje jwebserver in knji\u017eni\u010dno API za izvajanje preprostega http stre\u017enika za dostavljanje stati\u010dne vsebine (CGI in podobni obdelovalniki servletov niso podprti). Vgrajeni http stre\u017enik ni optimiziran za delovne obremenitve ter ne podpira upravljanja dostopov in avtentikacije, saj je predvsem namenjen uporabi v procesu razvoja za ustvarjanje prototipov, odpravljanje napak in testiranje projektov.\n<li class=\"l\"> V JavaDoc je bila implementirana podpora za oznako \u201e@snippet\u201c za vdelavo delujo\u010dih primerov in fragmentov kode v dokumentacijo API, ki jih je mogo\u010de preverjati, obarvati za sintakso in integrirati s IDE.\n<li class=\"l\"> Preoblikovana je bila implementacija API java.lang.reflect (Core Reflection), namenjena pridobivanju informacij o metodah, poljih in konstruktorjih razredov ter dostopu do notranje strukture razredov. Sam API java.lang.reflect je ostal nespremenjen, vendar je zdaj implementiran z uporabo deskriptorjev metod (method handles), ki jih zagotavlja modul java.lang.invoke, namesto uporabe generatorjev bajtkode. Sprememba je omogo\u010dila unifikacijo implementacij java.lang.reflect in java.lang.invoke ter poenostavila njihovo vzdr\u017eevanje.\n<li class=\"l\"> Predlagana je bila tretja predimplementacija API Vector, ki zagotavlja funkcije za vektorske izra\u010dune, ki se izvajajo z uporabo vektorskih ukazov procesorjev x86_64 in AArch64 ter omogo\u010dajo, da se operacije isto\u010dasno izvajajo na ve\u010d vrednostih (SIMD). V nasprotju z zmo\u017enostmi JIT-kompilatorja HotSpot za samodejno vektorizacijo skalarnih operacij, nov API omogo\u010da izrecno upravljanje vektorizacije za paralelno obdelavo podatkov.\n<li class=\"l\"> Dodana je bila SPI vmesnik (service-provider interface) za razre\u0161evanje imen gostiteljev in <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/sl\/lir\/ipv4\/\"   title=\"IP naslovov\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"851\">IP naslovov<\/a>, ki omogo\u010da uporabo alternativnih razre\u0161evalcev v java.net.InetAddress, ki niso vezani na obdelovalnike, ki jih ponuja operacijski sistem.\n<li class=\"l\"> Predlagana je druga predhodna implementacija API Foreign Function &amp; Memory, s katerim lahko aplikacije komunicirajo s kodo in podatki zunaj Java runtime. Novi API omogo\u010da u\u010dinkovito klicanje funkcij, ki se ne izvajajo v JVM, in dostop do pomnilnika, ki ga ne upravlja JVM. Na primer, lahko kli\u010dete funkcije iz zunanjih deljenih knji\u017enic in dostopate do podatkov procesa brez uporabe JNI.\n<li class=\"l\"> Dodana je druga eksperimentalna implementacija uskla\u0111ivanja prema obrascu u izrazima &#171;switch&#187;, koja omogu\u0107ava kori\u0161\u0107enje fleksibilnih \u0161ablona u oznakama &#171;case&#187; umesto ta\u010dnih vrednosti, obuhvataju\u0107i odjednom niz vrednosti za koje su ranije kori\u0161\u0107eni obimni nizovi izraza &#171;if\u2026else&#187;.          Object o = 123L;     String formatted = switch (o) {         case Integer i -&gt; String.format(&#171;int %d&#187;, i);         case Long l    -&gt; String.format(&#171;long %d&#187;, l);         case Double d  -&gt; String.format(&#171;double %f&#187;, d);         case String s  -&gt; String.format(&#171;String %s&#187;, s);         default        -&gt; o.toString();     };\n<li class=\"l\"> Mehanizem finalizacije je razgla\u0161en za zastarelega in bo izklju\u010den v eni od naslednjih razli\u010dic, prav tako povezane metode, kot so Object.finalize(), Enum.finalize(), Runtime.runFinalization() in System.runFinalization().\n<li class=\"l\"> V zbiralnikih odpadkov ZGC (Z Garbage Collector), SerialGC in ParallelGC je implementirana podpora za deduplikacijo nizov.    <\/ul>\n<p>Izvor: <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.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 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\/sl\/blog\/news\/vypusk-java-se-18\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.4\" \/>\n\t\t<meta property=\"og:locale\" content=\"sl_SI\" \/>\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\/sl\/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\udd47Izdaja Java SE 18 | ProHoster","description":"Po \u0161estih mesecih razvoja je podjetje Oracle izdalo platformo Java SE 18 (Java Platform, Standard Edition 18), pri \u010demer se uporablja odprti projekt OpenJDK kot referen\u010dna implementacija.","canonical_url":"https:\/\/prohoster.info\/sl\/blog\/news\/vypusk-java-se-18","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sl_SI","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\/sl\/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\/sl\/wp-json\/wp\/v2\/posts\/103599","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/comments?post=103599"}],"version-history":[{"count":1,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/posts\/103599\/revisions"}],"predecessor-version":[{"id":158042,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/posts\/103599\/revisions\/158042"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/media?parent=103599"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/categories?post=103599"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sl\/wp-json\/wp\/v2\/tags?post=103599"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}