{"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\/et\/blog\/news\/vypusk-java-se-18","title":{"rendered":"Java SE 18 v\u00e4ljalase","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>P\u00e4rast kuue kuu arendust on Oracle v\u00e4lja andnud Java SE 18 platvormi (Java Platform, Standard Edition 18), mille viiteks on avatud projekti OpenJDK. V\u00e4lja arvatud m\u00f5ned vananenud v\u00f5imaluste eemaldamised, on Java SE 18 tagasin\u00e4idatud \u00fchilduvus eelnevate Java platvormide v\u00e4ljaannetega \u2014 enamik varem kirjutatud Java-projekte t\u00f6\u00f6tab uue versiooniga muutumatult. Paigaldamiseks valmis Java SE 18 (JDK, JRE ja Server JRE) kogumid on ette valmistatud Linuxi (x86_64, AArch64), Windowsi (x86_64) ja macOSi (x86_64, AArch64) jaoks. OpenJDK projekti raames v\u00e4lja t\u00f6\u00f6tatud viidatud rakendusel Java 18 on t\u00e4ielikult avatud GPLv2 litsentsi alusel, koos GNU ClassPath eranditega, mis v\u00f5imaldavad d\u00fcnaamilist sidumist \u043a\u043e\u043c\u043c\u0435\u0440\u0447\u0435\u0441\u043a\u0438\u0445 \u043f\u0440\u043e\u0434\u0443\u043a\u0442idega.     <\/p>\n<p>Java SE 18 kuulub tavalise toe poolse v\u00e4ljalaske kategooriasse, mille v\u00e4rskendused v\u00e4lja antakse j\u00e4rgmise versioonini. Pikaajalise toe (LTS) jaoks tuleks kasutada Java SE 17, mille v\u00e4rskendusi antakse v\u00e4lja kuni 2029. aastani. Meeldetuletuseks, Java 10 v\u00e4ljalaskest alates on projekt l\u00e4inud uuele arendusprotsessile, mis h\u00f5lmab l\u00fchemaid uute v\u00e4ljalaskede ts\u00fckleid. Uus funktsionaalsus areneb n\u00fc\u00fcd pidevalt uuendatavates master-haru, kuhu lisatakse juba valmis muudatused ja millelt eraldatakse iga kuue kuu j\u00e4rel stabiliseerimise harud uute v\u00e4ljalaste jaoks.     <\/p>\n<p>Java 18 uuendustest v\u00f5ib m\u00e4rkida:  <\/p>\n<ul>\n<li class=\"l\"> Vaikimisi kasutatakse kodeeringut UTF-8. Java API-d, mis t\u00f6\u00f6tlevad tekstip\u00f5hiseid andmeid m\u00e4rkide kodeerimisega, hakkavad n\u00fc\u00fcd kogudes kasutama UTF-8 k\u00f5ikidel platvormidel, olenemata s\u00fcsteemi juhtimistest ja seadistatud piirkonnast. Varasema k\u00e4itumise taastamiseks, kus kodeering valitakse vastavalt s\u00fcsteemi seadistusele, saab kasutada parameetrit \u201e-Dfile.encoding=COMPAT\u201d.\n<li class=\"l\"> Paketti com.sun.net.httpserver sisaldab t\u00f6\u00f6riista jwebserver ja API-d, mille kaudu on v\u00f5imalik implementeerida lihtsat HTTP-serverit staatilise sisu edastamiseks (CGI ja servlet-sarnaseid k\u00e4sitlejaid ei toetata). Sisseehitatud HTTP-server ei ole optimeeritud t\u00f6\u00f6h\u00f5ive jaoks ja ei toeta juurdep\u00e4\u00e4su juhtimist ega autentimist, kuna on peamiselt m\u00f5eldud arendamise protsessis protot\u00fc\u00fcpide loomiseks, t\u00f5rkeotsinguks ja projektide testimiseks.\n<li class=\"l\"> JavaDoc-s on rakendatud @snippet sildi tugi, et lihtsalt sisestada t\u00f6\u00f6tavaid n\u00e4iteid ja koodijuppe API dokumentatsiooni, millele saab kasutada t\u00f6\u00f6riistu keele kontrollimiseks, s\u00fcntaksi vigtimise ja IDE-de integreerimise jaoks.\n<li class=\"l\"> Muudetud on API-d java.lang.reflect (Core Reflection), mis on m\u00f5eldud klasside meetodite, v\u00e4ljade ja konstruktorite kohta teabe saamiseks ning sisemise struktuuri juurde p\u00e4\u00e4semiseks. Endine API java.lang.reflect on j\u00e4\u00e4nud samaks, kuid n\u00fc\u00fcd on see rakendatud meetodite deskriptorite (method handles) abil, mida pakub moodul java.lang.invoke, selle asemel, et kasutada bahkoodigeneraatorite. See muudatus v\u00f5imaldas \u00fchtlustada java.lang.reflect ja java.lang.invoke rakendusi ning lihtsustada nende hooldust.\n<li class=\"l\"> Pakutud on kolmas eelversioon API Vector, mis pakub funktsioone vektorkalkulatsioonide jaoks, mida teostatakse x86_64 ja AArch64 protsessorite vektori juhiste abil ja mis v\u00f5imaldavad operatsioone korraga mitme v\u00e4\u00e4rtusega rakendada (SIMD). Erinevalt JIT-kompilaatori HotSpot pakutavatest skalaari operatsioonide automaatvektoriseerimise v\u00f5imalustest, annab uus API v\u00f5imaluse selgelt hallata vektoreid paralleelse andmete t\u00f6\u00f6tlemise jaoks.\n<li class=\"l\"> Lisatud on SPI liides (service-provider interface) hostinimede lahendamiseks ja <a class=\"wpil_keyword_link\" href=\"https:\/\/prohoster.info\/et\/lir\/ipv4\/\"   title=\"IP-aadresse\" data-wpil-keyword-link=\"linked\"  data-wpil-monitor-id=\"851\">IP-aadresse<\/a>, mis v\u00f5imaldab kasutada java.net.InetAddress alternatiivseid resolver'eid, mis ei ole seotud operatsioonis\u00fcsteemi pakutud t\u00f6\u00f6tlejate kasutamisega.\n<li class=\"l\"> K\u00e4ideldud on teist esialgset Foreign Function &amp; Memory API teostust, mis v\u00f5imaldab rakendustel suhelda koodi ja andmetega, mis asuvad v\u00e4ljaspool Java k\u00e4itamiskeskkonda. Uus API v\u00f5imaldab t\u00f5husalt kutsuda funktsioone, mida ei t\u00e4ideta JVM-is, ja p\u00e4\u00e4seda juurde JVM-i mittehaldatud m\u00e4lule. N\u00e4iteks on v\u00f5imalik kutsuda funktsioone v\u00e4listest jagatud teeki ja p\u00e4\u00e4seda juurde protsessi andmetele ilma JNI kasutamata.\n<li class=\"l\"> Lisatud teine katsetuslik mallip\u00f5hine vastamine &#171;switch&#187; v\u00e4ljendites, mis v\u00f5imaldab &#171;case&#187; m\u00e4rkides kasutada mitte t\u00e4pseid v\u00e4\u00e4rtusi, vaid paindlikke malle, mis katab samal ajal seeria v\u00e4\u00e4rtusi, mille jaoks varem tuli kasutada mahukaid &#171;if&#8230;else&#187; v\u00e4ljendeid.          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\"> On kuulutatud aegunuks ja see eemaldatakse \u00fches j\u00e4rgmistest v\u00e4ljaannetest, mis k\u00e4sitlevad mehhanismi finaliseerimise, samuti sellega seotud meetodeid, nagu Object.finalize(), Enum.finalize(), Runtime.runFinalization() ja System.runFinalization().\n<li class=\"l\"> Pr\u00fcgi kogumise ZGC (Z Garbage Collector), SerialGC ja ParallelGC teostuses on rakendatud stringide deduplikatsiooni tugi.    <\/ul>\n<p>Allikas: <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.1.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 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\/et\/blog\/news\/vypusk-java-se-18\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"et_EE\" \/>\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\/et\/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\udd47Java SE 18 v\u00e4ljaanne | ProHoster","description":"P\u00e4rast kuue kuu arendamist on Oracle v\u00e4lja andnud Java SE 18 (Java Platform, Standard Edition 18) platvormi, mille hulgas kasutatakse avatud projekti OpenJDK kui standardset rakendust.","canonical_url":"https:\/\/prohoster.info\/et\/blog\/news\/vypusk-java-se-18","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"et_EE","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\/et\/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\/et\/wp-json\/wp\/v2\/posts\/103599","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/comments?post=103599"}],"version-history":[{"count":1,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/103599\/revisions"}],"predecessor-version":[{"id":158042,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/103599\/revisions\/158042"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media?parent=103599"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/categories?post=103599"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/tags?post=103599"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}