Java SE 18 saki

Bayan watanni shida na ci gaba, Oracle ya fito da dandalin Java SE 18 (Java Platform, Standard Edition 18), wanda ke amfani da bude tushen aikin OpenJDK azaman aiwatar da tunani. Ban da cire wasu fasalolin da aka yanke, Java SE 18 yana kula da dacewa da baya tare da abubuwan da suka gabata na dandalin Java - yawancin ayyukan Java da aka rubuta a baya za su yi aiki ba tare da canje-canje ba yayin da suke gudana ƙarƙashin sabon sigar. Java SE 18 ginawa (JDK, JRE, da Server JRE) an shirya don Linux (x86_64, AArch64), Windows (x86_64), da macOS (x86_64, AArch64). An haɓaka ta aikin OpenJDK, aiwatar da tunani na Java 18 yana buɗewa gabaɗaya ƙarƙashin lasisin GPLv2 tare da keɓancewar GNU ClassPath don ba da damar haɗa kai ga samfuran kasuwanci.

Java SE 18 an kasafta shi azaman sakin tallafi na yau da kullun, tare da sabbin abubuwan da za'a fitar kafin sakin na gaba. Reshen tallafi na dogon lokaci (LTS) yakamata ya zama Java SE 17, wanda zai karɓi sabuntawa har zuwa 2029. Ka tuna cewa farawa tare da sakin Java 10, aikin ya canza zuwa wani sabon tsari na ci gaba, wanda ke nuna gajeriyar zagayowar don samuwar sabbin abubuwa. Yanzu ana haɓaka sabbin ayyuka a cikin reshe mai girma da aka sabunta akai-akai, wanda ke haɗa sauye-sauye da aka riga aka kammala kuma daga cikinsu ake reshen rassan kowane wata shida don daidaita sabbin abubuwan da aka fitar.

Sabbin abubuwa a cikin Java 18 sun haɗa da:

  • Tsohuwar ɓoyayyen ɓoye shine UTF-8. APIs ɗin Java waɗanda ke sarrafa bayanan rubutu dangane da ɓoyayyen haruffa yanzu za su yi amfani da UTF-8 ta tsohuwa akan duk dandamali, ba tare da la'akari da saitunan tsarin da saitunan gida ba. Don komawa zuwa tsohuwar ɗabi'a, inda aka zaɓi ɓoyayyen ɓoyayyen akan tsarin gida, zaku iya amfani da zaɓin "-Dfile.encoding=COMPAT".
  • Kunshin ya haɗa da kunshin com.sun.net.httpserver, wanda ya haɗa da kayan aikin jwebserver da API na ɗakin karatu tare da aiwatar da sabar http mai sauƙi don ba da abun ciki na tsaye (Ba a tallafawa CGI da masu sarrafa servlet). Ba a inganta uwar garken HTTP da aka gina a ciki don nauyin aiki ba kuma baya goyan bayan ikon sarrafawa da tabbatarwa, kamar yadda aka yi niyya da farko don amfani da shi a cikin tsarin ci gaba don samfuri, gyarawa da ayyukan gwaji.
  • JavaDoc yana ba da goyan baya ga alamar "@snippet" don haɗa misalan aiki da snippets na lamba a cikin takaddun API, inda zaku iya amfani da kayan aikin ingantawa, nuna alama, da haɗin IDE.
  • Aiwatar da java.lang.reflect API (Core Reflection), wanda aka tsara don samun bayanai game da hanyoyi, filayen da masu ginin aji, da kuma samun dama ga tsarin ciki na azuzuwan, an sake tsara su. API ɗin java.lang.reflect ita kanta ba ta canzawa, amma yanzu ana aiwatar da ita ta hanyar amfani da hannaye da java.lang.invoke ke bayarwa, maimakon amfani da janareta na bytecode. Canjin ya ba mu damar haɗa ayyukan java.lang.reflect da java.lang.invoke, da sauƙaƙe kiyaye su.
  • An gabatar da samfoti na uku na Vector API, yana ba da ayyuka don lissafin vector waɗanda ake aiwatar da su ta amfani da umarnin vector akan na'urori masu sarrafa x86_64 da AArch64 kuma suna ba da damar aiwatar da ayyuka a lokaci guda zuwa ƙima mai yawa (SIMD). Ba kamar iyawar da aka bayar a cikin HotSpot JIT mai tarawa don sarrafa kai-da-kai na ayyukan scalar, sabon API yana ba da damar sarrafa vectorization a sarari don sarrafa bayanai daidai gwargwado.
  • Ƙara SPI interface (mai ba da sabis) don warware sunayen masu watsa shiri da adiresoshin IP, yana ba ku damar amfani da madadin masu warwarewa a cikin java.net.InetAddress waɗanda ba a haɗa su da masu aiki da tsarin aiki ke bayarwa ba.
  • An samar da samfoti na biyu na Ayyukan Waje & Ƙwaƙwalwar Ƙwaƙwalwar API, yana ba da damar aikace-aikacen yin hulɗa tare da lamba da bayanai a wajen lokacin aikin Java. Sabuwar API tana ba ku damar kiran ayyukan da ba JVM ba da kyau da samun dama ga ƙwaƙwalwar da ba ta sarrafa JVM ba. Misali, zaku iya kiran ayyuka daga ɗakunan karatu na waje da samun damar aiwatar da bayanan ba tare da amfani da JNI ba.
  • An ƙara ƙaddamar da aiwatar da gwaji na biyu na ƙirar ƙira a cikin maganganun "canzawa", yana ba da damar yin amfani da ƙirar sassauƙa a cikin alamun "harka" maimakon madaidaitan dabi'u, wanda ke rufe jerin dabi'u a lokaci ɗaya, wanda a baya ya zama dole don amfani. sarƙaƙƙiyar sarƙoƙi na maganganun "idan... Abun o = 123L; Tsarin igiya = canza (o) {harka Integer i -> String.format ("int %d", i); harka Dogon l -> String.format("dogon%d", l); harka Biyu d -> String.format("biyu%f", d); case String s -> String.format("String %s", s); tsoho -> o.toString (); };
  • Tsarin ƙarewa da hanyoyin da ke da alaƙa kamar Object.finalize (), Enum.finalize (), Runtime.runFinalization () da System.runFinalization () an soke su kuma za a kashe su a cikin sakin gaba.
  • Masu tara shara na ZGC (Z), SerialGC, da ParallelGC masu tara shara suna goyan bayan cirewar layi.

source: budenet.ru

Add a comment