Kuuden kuukauden kehityksen jälkeen Oracle on julkistanut Java SE 24:n, joka perustuu avoimen lähdekoodin OpenJDK-projektiin ja säilyttää taaksepäin yhteensopivuuden niin, että useimmat aiemmin kehitetyt projektit jatkavat toimintaansa ilman muutoksia.
Toisin kuin LTS-julkaisut, Java SE 24 on tavallinen tukijulkaisu, mikä tarkoittaa päivityksiä seuraavaan julkaisuun asti. Pitkän aikavälin vakautta etsiville Java SE 21:n ja Java SE 17:n tuki jatkuu vuoteen 2031 ja 2029 saakka. Lisäksi Java SE 8 LTS:n laajennettu tuki jatkuu vuoteen 2030 asti, kun taas Java SE 11 on voimassa vuoteen 2032 asti.
Parannuksia ja uusia ominaisuuksia
Tässä uudessa versiossa, joka esitetään Java SE 24:stä, yksi tärkeimmät parannukset on esittely Kokeellinen generatiivinen tila Shenandoah-jätteenkerääjälle (suunniteltu käsittelemään uusia ja vanhoja esineitä erikseen). Tämä uusi tila parantaa tehokkuutta lyhytikäisten kohteiden puhdistuksessa, optimoi muistin käytön ja tarjoaa vakaamman suorituskyvyn vaihtelevissa kuormituksissa.
Toinen erottuva uutuus on Kokeellinen tuki kompakteille objektiotsikoille HotSpot JVM:ssä, pienentämällä sen kokoa 96 bitistä 64 bittiin 64-bittisissä järjestelmissä. Tämä optimointi auttaa pienentämään keon kokoa ja parantamaan muistin välimuistin tehokkuutta.
Jätteenkerääjä G1 on myös optimoitu uudelleensuunnittelulla esteistä, jotka valvovat sovellusten pääsyä muistiin. Esteen laajennus suoritetaan nyt myöhemmin käännösprosessissa C2 JIT -kääntäjässä, mikä vähentää sen yleiskustannuksia jopa 20 % sovellustyypistä riippuen.
Tietoturva- ja salausparannuksia
Java SE 24 esittelee API:n kryptografisten avainten johtaminen (KDF), mahdollistaa lisäavaimien luomisen salaisesta avaimesta ja mielivaltaisesta datajoukosta. Tämä vielä esikatseluvaiheessa oleva API vahvistaa avaintenhallinnan turvallisuutta alustassa.
Lisäksi, Varoitukset API:iden käytöstä on lisätty Java alkuperäinen käyttöliittymä ja vieras funktio ja muistivalmistellaan integriteettitilan tulevaa käyttöönottoa, joka rajoittaa oletusarvoista pääsyä alkuperäiseen koodiin. Varoitukset on otettu käyttöön myös käytettäessä ulkoisen muistin käyttötapoja sun.misc.Unsafe-luokan kautta, mikä suosittelee siirtymistä VarHandle API:hen.
Toisaalta Java SE 24:ssä tuki ML-KEM-salausalgoritmeille ja ML-DSA ( suunniteltu olevan kestää kvanttitietokonehyökkäyksiä). Nämä algoritmit perustuvat verkkoteoriaongelmiin ja varmistavat, että ratkaisuajat ovat yhtä suuret sekä tavanomaisissa että kvanttitietokoneissa.
Java Security Manager, joka oli poistettu käytöstä selaimen laajennustuen katoamisen jälkeen, on poistettu pysyvästi.
optimoinnit
JVM HotSpot mahdollistaa nyt luokkien esilatauksen ja linkittämisen aikaisin, mikä nopeuttaa merkittävästi sovelluksen käynnistystä. Ensimmäisellä ajolla luokkien tila tallennetaan välimuistiin tulevien käynnistysten lataamisen helpottamiseksi.
myös Scoped Arvojen käyttöönottoa on parannettu, joka nyt smahdollistaa muuttumattoman tiedon jakamisen säikeiden välillä tehokkaammin korvaamalla perinteisen kierrepaikallismuuttujamekanismin. Tämä on erityisen hyödyllistä työskennellessäsi miljoonien virtuaalisäikeiden kanssa samanaikaisesti.
Toinen uutuus on virtuaalisten säikeiden optimointi estyneissä tiloissa. Tässä julkaisussa estetty näennäissäike vapauttaa alustasäiensä, jolloin muut säikeet voivat käyttää sitä uudelleen, mikä parantaa skaalautuvuutta järjestelmissä, joissa on paljon monisäikeistä käyttöä.
Niistä muut erottuvat muutokset:
- Uusi laajennus Stream API:lle, jonka avulla voit määrittää mukautettuja välitoimintoja.
- Kuvioiden sovituskoneita on parannettu tukemaan primitiivisiä tyyppejä (int, byte, char jne.) kytkinlausekkeissa ja esiintymän operaattorissa.
- Structured Concurrency API:n neljäs esikatseluversio on lisätty, mikä yksinkertaistaa monisäikeisten sovellusten kehittämistä käsittelemällä eri säikeissä olevia tehtäviä yhtenä suoritusyksikkönä.
- Yksinkertaisempi tapa ilmoittaa luokkia ja määrittää main()-metodi on otettu käyttöön, mikä eliminoi tarpeen määrittää julkista luokkaa staattisilla menetelmillä.
- Luokkatiedostojen API on lisätty, jonka avulla voit jäsentää, luoda ja muuntaa Java-luokkatiedostoja helpommin ja ohjelmallisemmin.
Lopuksi, jos olet kiinnostunut saamaan lisätietoja siitä, voit tutustua yksityiskohtiin osoitteessa seuraava linkki.
Lataa Java SE 24
Java SE 24:n uuden version asentamisesta kiinnostuneiden kannattaa tietää, että kokoelmat (JDK, JRE ja Server JRE) ovat jo valmiita Linux, Windows ja macOS.