Ukukhishwa kwe-Java SE 19

Ngemuva kwezinyanga eziyisithupha zokuthuthuka, i-Oracle ikhiphe i-Java SE 19 (i-Java Platform, i-Standard Edition 19), esebenzisa iphrojekthi ye-OpenJDK yomthombo ovulekile njengokuqaliswa kwereferensi. Ngaphandle kokususwa kwezinye izici ezingasasebenzi, i-Java SE 19 igcina ukuhambisana okusemuva nokukhishwa kwangaphambilini kweplathifomu ye-Java - amaphrojekthi amaningi e-Java abhalwe ngaphambilini azosebenza ngaphandle kwezinguquko lapho esebenza ngaphansi kwenguqulo entsha. Izakhiwo ezilungele ukufaka ze-Java SE 19 (JDK, JRE ne-Server JRE) zilungiselelwa i-Linux (x86_64, AArch64), Windows (x86_64) kanye ne-macOS (x86_64, AArch64). Ithuthukiswe iphrojekthi ye-OpenJDK, ukusetshenziswa kwesithenjwa se-Java 19 kuwumthombo ovulekile ngokugcwele ngaphansi kwelayisensi ye-GPLv2, okuhlukile kwe-GNU ClassPath okuvumela ukuxhumana okunamandla nemikhiqizo yezentengiso.

I-Java SE 19 ihlukaniswa njengokukhululwa kosekelo okuvamile futhi izoqhubeka nokuthola izibuyekezo kuze kube ukukhishwa okulandelayo. Igatsha Lokusekela Isikhathi Eside (LTS) kufanele libe yi-Java SE 17, ezoqhubeka nokuthola izibuyekezo kuze kube ngu-2029. Ake sikukhumbuze ukuthi kusukela ngokukhululwa kwe-Java 10, iphrojekthi ishintshele kunqubo entsha yokuthuthukisa, okusho umjikelezo omfushane wokwakhiwa kokukhishwa okusha. Ukusebenza okusha manje sekuthuthukisiwe egatsheni elilodwa eliyinhloko elivuselelwe njalo, elihlanganisa izinguquko esezilungile futhi lapho amagatsha enziwa khona njalo ngemva kwezinyanga eziyisithupha ukuze kuzinziswe ukukhishwa okusha.

Izici ezintsha ku-Java 19 zifaka:

  • Usekelo lokuqala lwamaphethini okurekhoda luphakanyisiwe, kunweba isici sokufanisa iphethini esethulwe ku-Java 16 ngamathuluzi okuhlaziya amanani amakilasi ohlobo lwerekhodi. Isibonelo: Iphoyinti lokurekhoda(int x, int y) {} i-void printSum(Into o) {uma (o exampleof Point(int x, int y)) { System.out.println(x+y); }}
  • Ukwakhiwa kwe-Linux kunikeza ukusekelwa kwe-RISC-V yezakhiwo.
  • Kwengezwe ukwesekwa kokuqala kwe-FFM (Foreign Function & Memory) API, ekuvumela ukuthi uhlele ukusebenzisana kwezinhlelo ze-Java ngekhodi yangaphandle nedatha ngokubiza imisebenzi evela emitapweni yolwazi yangaphandle kanye nokufinyelela inkumbulo ngaphandle kwe-JVM.
  • Ukwesekwa okwengeziwe kochungechunge olubonakalayo, okuwuchungechunge olungasindi okwenza kube lula kakhulu ukubhala nokugcinwa kwezinhlelo zokusebenza ezinezintambo eziningi ezisebenza kahle.
  • Ukubuka kuqala kwesine kweVector API kuhlongoziwe, okuhlinzeka ngemisebenzi yezibalo ze-vector ezenziwa kusetshenziswa imiyalelo ye-vector kumaphrosesa we-x86_64 kanye ne-AArch64 futhi kuvumela ukusebenza ukuthi kusetshenziswe ngesikhathi esisodwa kumanani amaningi (SIMD). Ngokungafani namandla anikezwe kusihlanganisi se-HotSpot JIT okwenziwa ngokuzenzakalela kwemisebenzi ye-scalar, i-API entsha yenza kube nokwenzeka ukulawula ngokusobala ukwenziwa kwe-vector ukuze kucutshungulwe idatha efanayo.
  • Ukuqaliswa kokuhlolwa kwesithathu kokumataniswa kwephethini enkulumweni ethi "switch" yengeziwe, okuvumela ukusetshenziswa kumalebula "indaba" engewona amanani aqondile, kodwa amaphethini aguquguqukayo ahlanganisa uchungechunge lwamanani ngesikhathi esisodwa, okwakudingeka ngaphambilini sebenzisa amaketanga anzima ezinkulumo ezithi β€œuma...kungenjalo”. Into o = 123L; Intambo ifomethiwe = shintsha (o) {icala eliphelele i -> String.format("int %d", i); icala elide l -> String.format("inde %d", l); icala d -> String.format("double %f", d); icala Intambo s -> String.format("String %s", s); okuzenzakalelayo -> o.toString(); };
  • Kwengezwe i-API yokuhlola yokufana okuhlelekile, okwenza kube lula ukuthuthukiswa kwezinhlelo zokusebenza ezinezintambo eziningi ngokuphatha imisebenzi eminingi egijima emicu ehlukene njengebhulokhi eyodwa.

Source: opennet.ru

Engeza amazwana