Java SE 18 tuku

I muri i nga marama e ono o te whakawhanaketanga, kua tukuna e Oracle a Java SE 18 (Java Platform, Standard Edition 18), e whakamahi ana i te kaupapa tuwhera OpenJDK hei whakatinanatanga tohutoro. I tua atu i te tangohanga o etahi ahuatanga kua kore, ka mau tonu a Java SE 18 i te hototahi whakamuri me nga putanga o mua o te papaahi Java—ko te nuinga o nga kaupapa Java kua tuhia o mua ka mahi tonu me te kore whakarereke i te wa e rere ana i raro i te putanga hou. Ko nga hanga whakaurunga o Java SE 18 (JDK, JRE, me Server JRE) kua rite mo Linux (x86_64, AArch64), Windows (x86_64), me te macOS (x86_64, AArch64). I whakawhanakehia e te kaupapa OpenJDK, ka tino tuwhera te whakatinanatanga tohutoro Java 18 i raro i te raihana GPLv2 me nga tuunga GNU ClassPath kia taea ai te hono hihiri ki nga hua arumoni.

Ko te Java SE 18 kua tohatohahia hei tuku tautoko i nga wa katoa, me nga whakahou ka tukuna i mua i te tukunga o muri. Ko Java SE 17 te peka Tautoko Roa (LTS), ka tae ki te tau 2029. Kia maumahara i timata mai i te tukunga o Java 10, ka huri te kaupapa ki te tukanga whanaketanga hou, e kii ana he huringa poto ake mo te hanganga o nga putanga hou. Kei te whanakehia he mahinga hou i roto i tetahi peka matua kua whakahoutia i nga wa katoa, e whakauru ana i nga whakarereketanga kua oti kua oti, me nga manga ka peka ia ono marama ki te whakapumau i nga putanga hou.

Ko nga ahuatanga hou i roto i te Java 18 ko:

  • Ko te whakawaehere taunoa ko UTF-8. Ko nga API Java e tukatuka ana i nga raraunga kuputuhi i runga i te whakawaehere pūāhua ka whakamahi taunoa i te UTF-8 i runga i nga papaaho katoa, ahakoa nga tautuhinga punaha me nga tautuhinga rohe. Ki te hoki ki te whanonga tawhito, kei hea te whakawaehere i whiriwhiria i runga i te waahi punaha, ka taea e koe te whakamahi i te "-Dfile.encoding=COMPAT" kōwhiringa.
  • Kei roto i te kete te kete com.sun.net.httpserver, kei roto ko te taputapu jwebserver me te API wharepukapuka me te whakatinanatanga o te tūmau http ngawari mo te mahi i nga ihirangi pateko (kaore i te tautokohia te CGI me nga kaikawe rite-servlet). Ko te tūmau HTTP kua hangaia kaore i te arotauhia mo nga kawenga mahi me te kore e tautoko i te mana uru me te whakamotuhēhēnga, i te mea ko te kaupapa matua ki te whakamahi i roto i te tukanga whanaketanga mo te tauira, te patuiro me te whakamatautau i nga kaupapa.
  • Ka whakaratohia e JavaDoc te tautoko mo te tohu "@snippet" ki te whakauru i nga tauira mahi me nga tohu tohu ki roto i nga tuhinga API, ka taea e koe te whakamahi i nga taputapu whakamana, te tohu wetereo, me te whakauru IDE.
  • Ko te whakatinanatanga o te java.lang.reflect API (Core Reflection), i hangaia hei tiki korero mo nga tikanga, mara me nga kaihanga akomanga, me te uru atu ki te hanganga o roto o nga karaehe, kua whakahouhia. Ko te java.lang.reflect API tonu ka noho tonu, engari kua whakatinanahia inaianei ma te whakamahi i nga kakau tikanga e whakaratohia ana e te java.lang.invoke kōwae, kaua ki te whakamahi i nga kaihanga bytecode. Na te huringa i taea e matou te whakakotahi i nga whakatinanatanga o te java.lang.reflect me te java.lang.invoke, me te whakangawari i to raatau tiaki.
  • Ko te tirohanga tuatoru o te Vector API kua whakaarohia, e whakarato ana i nga mahi mo nga tatauranga vector e mahia ana ma te whakamahi i nga tohutohu vector i runga i te x86_64 me te AArch64 kaitukatuka me te tuku i nga mahi ki te tono i te wa kotahi ki nga uara maha (SIMD). Kaore i rite ki nga kaha e whakaratohia ana i roto i te Kaihanga JIT HotSpot mo te whakangao-aunoa o nga mahi scalar, ma te API hou ka taea te whakahaere i te vectorization mo te tukatuka raraunga whakarara.
  • Kua taapirihia te atanga SPI (atanga kaiwhakarato ratonga) mo te whakatau i nga ingoa kaihautu me nga wahitau IP, ka taea e koe te whakamahi i etahi atu otinga i roto i te java.net.InetAddress kaore e herea ki nga kaihautu e tukuna ana e te punaha whakahaere.
  • Ka tukuna he tirohanga tuarua mo te Taumahi Taumahi me te Mahara API, ka taea e nga tono te taunekeneke me te waehere me nga raraunga i waho o te wa whakahaere Java. Ko te API hou ka taea e koe te waea pai ki nga mahi kore-JVM me te uru ki te mahara kore-JVM-whakahaere. Hei tauira, ka taea e koe te waea i nga mahi mai i nga whare pukapuka tiritahi o waho me te uru ki nga raraunga tukatuka me te kore whakamahi i te JNI.
  • Ko te whakatinanatanga whakamatautau tuarua mo te whakataurite tauira i roto i nga korero "whakawhiti" kua taapirihia, ka taea te whakamahi i nga tauira ngawari i roto i nga tapanga "take" kaua ki nga uara tika, e hipoki ana i te raupapa o nga uara i te wa kotahi, i tika ai te whakamahi i mua. nga mekameka uaua o nga korero "mehemea ... ke atu". Ahanoa o = 123L; Kua whakahōputuhia te aho = whakakā (o) { case Integer i -> String.format("int %d", i); take Roa l -> String.format("roa %d", l); take Double d -> String.format("double %f", d); case String s -> String.format("String %s", s); taunoa -> o.toString(); };
  • Ko te tikanga whakaotinga me ona tikanga e hono ana penei i te Object.finalize(), Enum.finalize(), Runtime.runFinalization() me te System.runFinalization() kua whakakorehia, ka monoa i te tukunga a meake nei.
  • Ka tautokohia e te ZGC (Z kaikohi paru), SerialGC, me te ParallelGC nga kaikohi paru i te tangohanga rarangi.

Source: opennet.ru

Tāpiri i te kōrero