Java SE 16 scaoileadh

Tar éis sé mhí d'fhorbairt, d'eisigh Oracle Java SE 16 (Java Platform, Standard Edition 16), a úsáideann an tionscadal OpenJDK mar chur i bhfeidhm tagartha. Coinníonn Java SE 16 comhoiriúnacht siar le heisiúintí an ardáin Java roimhe seo; oibreoidh gach tionscadal Java a scríobhadh roimhe seo gan athruithe nuair a sheoltar é faoin leagan nua. Ullmhaítear tógálacha Java SE 16 (JDK, JRE agus Server JRE) atá réidh le suiteáil le haghaidh Linux (x86_64, AArch64), Windows agus macOS. Arna fhorbairt ag an tionscadal OpenJDK, tá cur i bhfeidhm tagartha Java 16 foinse oscailte go hiomlán faoin gceadúnas GPLv2, le heisceachtaí GNU ClassPath a cheadaíonn nascadh dinimiciúil le táirgí tráchtála.

Tá Java SE 16 rangaithe mar scaoileadh tacaíochta ginearálta agus leanfaidh sé ag fáil nuashonruithe go dtí an chéad scaoileadh eile. Ba cheart go mbeadh an brainse Tacaíochta Fadtéarmach (LTS) Java SE 11, a leanfaidh de bheith ag fáil nuashonruithe go dtí 2026. Tá an chéad eisiúint LTS eile sceidealta do Mheán Fómhair 2021. Cuirfimid i gcuimhne duit, ag tosú le scaoileadh Java 10, gur aistrigh an tionscadal go próiseas forbartha nua, rud a thugann le tuiscint timthriall níos giorra chun eisiúintí nua a fhoirmiú. Forbraítear feidhmiúlacht nua anois i máistirbhrainse amháin a nuashonraítear i gcónaí, lena n-áirítear athruithe réamhdhéanta agus as a ndéantar brainsí a chraobhscaoileadh gach sé mhí chun eisiúintí nua a chobhsú.

Mar ullmhúchán don eisiúint nua, tá an fhorbairt tar éis bogadh ón gcóras rialaithe leagan Mercurial go Git agus ardán forbartha comhoibríoch GitHub. Táthar ag súil go bhfeabhsóidh an imirce feidhmíocht oibríochtaí stórtha, éifeachtúlacht stórála a mhéadú, rochtain a sholáthar ar athruithe ar fud stair an tionscadail, feabhas a chur ar thacaíocht d'athbhreithniú cód, agus cur ar chumas APIanna sreabhadh oibre a uathoibriú. Ina theannta sin, déanann úsáid Git agus GitHub an tionscadal níos tarraingtí do thosaitheoirí agus d'fhorbróirí atá i dtaithí ar Git.

I measc na ngnéithe nua i Java 16 tá:

  • Cuireadh modúl turgnamhach jdk.incubator.vector leis le cur i bhfeidhm an Vector API, a sholáthraíonn feidhmeanna le haghaidh ríomhanna veicteora a dhéantar trí úsáid a bhaint as treoracha veicteoirí ar phróiseálaithe x86_64 agus AArch64 agus a cheadaíonn oibríochtaí a chur i bhfeidhm go comhuaineach ar illuachanna (SIMD). I gcodarsnacht leis na cumais a chuirtear ar fáil i dtiomsaitheoir HotSpot JIT le haghaidh oibríochtaí scálach a uath-veicteoiriú, ceadaíonn an API nua duit veicteoiriú a rialú go sainráite le haghaidh próiseála sonraí comhthreomhara.
  • Tá cead ag cód JDK agus VM HotSpot atá scríofa i C++ gnéithe a tugadh isteach sa tsonraíocht C++14 a úsáid. Roimhe seo, ceadaíodh caighdeáin C++98/03.
  • Chuir an ZGC (Bailitheoir Dramhaíl Z), a oibríonn i mód éighníomhach agus a íoslaghdaíonn moilleanna mar gheall ar bhailiú truflais a oiread agus is féidir, leis an gcumas cruacha snáithe a phróiseáil go comhthreomhar gan snáitheanna iarratais a chur ar sos. Níl ag an ZGC anois ach obair a éilíonn fionraí, a bhfuil moill leanúnach ann, de ghnáth nach mó ná cúpla céad microseconds.
  • Tacaíocht bhreise do shoicéid Unix (AF_UNIX) leis na ranganna SocketChannel, ServerSocketChannel agus java.nio.channels.
  • Tá calafort curtha i bhfeidhm don Alpach dáileadh Linux leis an musl leabharlainne caighdeánach C, a bhfuil tóir air i dtimpeallachtaí le haghaidh coimeádáin, microservices, scamall agus córais leabaithe. Ceadaíonn an calafort atá beartaithe i dtimpeallachtaí den sórt sin duit cláir Java a rith cosúil le feidhmchláir rialta. Ina theannta sin, ag baint úsáide as jlink, is féidir leat na modúil neamhúsáidte go léir a bhaint agus timpeallacht íosta a chruthú atá leordhóthanach chun an feidhmchlár a rith, a ligeann duit íomhánna dlúth a bhaineann go sonrach le feidhmchlár a chruthú.
  • Tá an mheicníocht Meiteaspáis Leaisteacha curtha i bhfeidhm, ag uasmhéadú na n-oibríochtaí a bhaineann le cuimhne a leithdháileadh agus a thabhairt ar ais atá áitithe ag meiteashonraí ranga (meiteaspás) i JVM HotSpot. Laghdaíonn úsáid Metaspace Leaisteacha ilroinnt cuimhne, laghdaítear lastuas lódóra ranga, agus tá éifeacht tairbheach aige freisin ar fheidhmíocht feidhmchlár fadtréimhseach freastalaí mar gheall ar ais níos tapúla ar chuimhne áitithe ag meiteashonraí ranga neamhúsáidte chuig an gcóras oibriúcháin. Chun an modh scaoileadh cuimhne a roghnú tar éis ranganna a dhíluchtú, tairgtear an rogha “-XX:MetaspaceReclaimPolicy=(cothrom | ionsaitheach|níl)”.
  • Tá calafort JDK curtha leis do chórais Windows a ritheann ar chrua-earraí le próiseálaithe atá bunaithe ar ailtireacht AArch64.
  • Tá an tríú réamhamharc ar an API Rochtana Cuimhne Eachtrach molta, a cheadaíonn d'fheidhmchláir Java rochtain a fháil go slán agus go héifeachtach ar réigiúin chuimhne lasmuigh den charn Java trí na hastarraingtí nua MemorySegment, MemoryAddress, agus MemoryLayout a ionramháil.
  • Tá API Nascóir Eachtrach turgnamhach curtha i bhfeidhm, a sholáthraíonn rochtain ó Java ar an gcód dúchais. In éineacht leis an API Cuimhne Eachtrach, déanann an comhéadan nua ríomhchláraithe é i bhfad níos éasca cumhdaigh a chruthú thar ghnáthleabharlanna comhroinnte.
  • Cuireadh an áirgiúlacht jpackage leis, a ligeann duit pacáistí a chruthú d'fheidhmchláir Java féinchuimsitheacha. Tá an áirgiúlacht bunaithe ar javapackager ó JavaFX agus ligeann sé duit pacáistí a chruthú i bhformáidí dúchasacha d'ardáin éagsúla (msi agus exe do Windows, pkg agus dmg le haghaidh macOS, deb agus rpm le haghaidh Linux). Áirítear ar na pacáistí gach spleáchas riachtanach.
  • Cumasaítear imfhálú docht ar gach inmheánach JDK de réir réamhshocraithe, cé is moite d’APIanna ríthábhachtacha mar sun.misc.Unsafe. Tá luach na rogha “--ligal-access” socraithe anois chun “a shéanadh” in ionad “cead” de réir réamhshocraithe, rud a chuirfidh bac ar iarrachtaí ón gcód rochtain a fháil ar fhormhór na ranganna, na modhanna agus na réimsí inmheánacha. Chun an srian a sheachaint, bain úsáid as an rogha “-illegal-access=permit”.
  • Tá cobhsú déanta ar chur i bhfeidhm meaitseáil patrún san oibreoir “in iúl”, rud a ligeann duit athróg áitiúil a shainiú láithreach chun tagairt a dhéanamh don luach seiceála. Mar shampla, is féidir leat “más rud é (obj instanceof String s && s.length()> 5) {.. s.contains(..) ..}” a scríobh láithreach gan “Teaghrán s = (Teaghrán) obj” a shainmhíniú go sainráite. An raibh: if (obj instanceof Group) { Grúpa group = (Grúpa) obj; iontrálacha var = group.getEntries(); } Anois is féidir leat a dhéanamh gan "Grúpa grúpa = (Grúpa) obj" a shainmhíniú: más rud é (obj instanceof Grúpa grúpa) { var iontrálacha = group.getEntries(); }
  • Tá cur chun feidhme an eochairfhocail "taifead" cobhsaithe, ag soláthar foirm dhlúth le haghaidh sainmhínithe aicme a chuireann deireadh leis an ngá atá le modhanna éagsúla íseal-leibhéil a shainiú go sainráite amhail comhionann(), hashCode() agus toString() i gcásanna ina stóráiltear sonraí ach amháin i réimsí nach n-athraíonn sé. Nuair a úsáideann aicme feidhmiúcháin chaighdeánacha de na modhanna comhionanna(), hashCode() agus toString(), is féidir leis déanamh gan a sainmhíniú sainráite: taifead poiblí BankTransaction(Dáta Logánta dáta, méid dúbailte, cur síos teaghrán) {}

    Leis an dearbhú seo cuirfear i bhfeidhm go huathoibríoch na modhanna comhionanna(), hashCode() agus toString() de bhreis ar na modhanna cruthaitheoir agus faighteoir.

  • Tá an dara dréacht beartaithe le haghaidh aicmí séalaithe agus comhéadain nach féidir le haicmí agus comhéadain eile a úsáid chun feidhmiúcháin a oidhreacht, a shíneadh nó a shárú. Soláthraíonn aicmí séalaithe bealach níos dearbhaithe freisin chun srian a chur le húsáid sár-aicme ná le modhnóirí rochtana, bunaithe ar na fo-aicmí a cheadaítear le síneadh a liostú go sainráite. pacáiste com.example.geometry; aicme séalaithe poiblí Ceadanna cruth com.example.polar.Circle, com.example.quad.Rectangle, com.example.quad.simple.Square {…}

Foinse: oscailtenet.ru

Add a comment