Hat hónap fejlesztés után Az Oracle bejelentette a Java SE 24 kiadását, amely a nyílt forráskódú OpenJDK projekten alapul, fenntartva a visszafelé kompatibilitást, így a legtöbb korábban kifejlesztett projekt továbbra is módosítás nélkül fut majd.
A hosszú távú támogatási (LTS) kiadásokkal ellentétben A Java SE 24 rendszeres támogatási kiadás, ami frissítéseket jelent a következő kiadásig. A hosszú távú stabilitást keresők számára a Java SE 21 és a Java SE 17 továbbra is támogatott 2031-ig, illetve 2029-ig. Ezenkívül a Java SE 8 LTS kiterjesztett támogatása 2030-ig, míg a Java SE 11 2032-ig marad érvényben.
Fejlesztések és új funkciók
A Java SE 24 új verziójában az egyik legfontosabb fejlesztései a bevezetése Kísérleti generatív mód a Shenandoah szemétgyűjtőhöz (Új és régi objektumok külön feldolgozására tervezték). Ez az új mód javítja a hatékonyságot a rövid élettartamú objektumok tisztítása során, optimalizálja a memóriahasználatot, és stabilabb teljesítményt kínál változó terhelés mellett.
Egy másik kiemelkedő újdonság a Kísérleti támogatás a kompakt objektumfejlécekhez a HotSpot JVM-ben, méretét 96 bitről 64 bitre csökkenti a 64 bites rendszereken. Ez az optimalizálás segít csökkenteni a kupac méretét és javítani a memória-gyorsítótár hatékonyságát.
A szemétszedő A G1-et is optimalizálták egy újratervezéssel az alkalmazások memóriához való hozzáférését figyelő akadályok. Az akadálybővítést most a fordítási folyamat későbbi szakaszában hajtják végre a C2 JIT fordítón belül, ami az alkalmazás típusától függően akár 20%-kal is csökkenti a többletköltséget.
Biztonsági és titkosítási fejlesztések
A Java SE 24 API-t mutat be a számára kriptográfiai kulcsok származtatása (KDF), lehetővé teszi további kulcsok generálását titkos kulcsból és tetszőleges adathalmazból. Ez az API, amely még mindig az előnézeti fázisban van, megerősíti a kulcskezelés biztonságát a platformon belül.
Ezen túlmenően, Figyelmeztetések kerültek hozzáadásra az API-k használatával kapcsolatban Java natív interfész és idegen funkció és memória, egy integritási mód jövőbeli megvalósításának előkészítéseként, amely korlátozza az alapértelmezett hozzáférést a natív kódhoz. A figyelmeztetéseket a sun.misc.Unsafe osztályon keresztüli külső memória-elérési módszerek használatakor is engedélyezték, és a VarHandle API-ra való átállást javasolják.
Másrészt a Java SE 24-ben a ML-KEM kriptográfiai algoritmusok támogatása és ML-DSA (arra tervezték ellenáll a kvantumszámítógépes támadásoknak). Ezek az algoritmusok hálózatelméleti problémákon alapulnak, biztosítva, hogy a megoldási idők azonosak legyenek mind a hagyományos, mind a kvantumszámítógépeken.
A Java Security Managert, amely a böngészőbővítmények támogatásának megszűnése óta elavult, véglegesen eltávolították.
Optimizaciones
A JVM HotSpot mostantól lehetővé teszi az osztályok előzetes betöltését és korai összekapcsolását, ami jelentősen felgyorsítja az alkalmazásindítást. Az első futtatáskor az osztályok állapota gyorsítótárazásra kerül, hogy megkönnyítse a betöltést a jövőbeli indításoknál.
is, A hatályos értékek megvalósítása javult, amely most plehetővé teszi a megváltoztathatatlan adatok megosztását a szálak között hatékonyabban, felváltva a hagyományos szál-lokális változó mechanizmust. Ez különösen előnyös, ha több millió virtuális szálal dolgozik egyidejűleg.
További újdonság a virtuális szálak optimalizálása blokkolt állapotban. Ebben a kiadásban egy blokkolt virtuális szál felszabadítja a platformszálát, lehetővé téve annak újrafelhasználását más szálak számára, javítva a méretezhetőséget a magas többszálú használatot használó rendszereken.
A egyéb kiemelkedő változások:
- Új bővítmény a Stream API-hoz, amely lehetővé teszi egyéni köztes műveletek meghatározását.
- A mintaillesztő motorokat továbbfejlesztették, hogy támogassák a primitív típusokat (int, byte, char stb.) a kapcsolókifejezésekben és az instanceof operátorban.
- Hozzáadták a Structured Concurrency API negyedik előnézeti verzióját, amely leegyszerűsíti a többszálú alkalmazások fejlesztését, mivel a különböző szálakon lévő feladatokat egyetlen végrehajtási egységként kezeli.
- Egy egyszerűbb módszert vezettek be az osztályok deklarálására és a main() metódus meghatározására, így nincs szükség nyilvános osztályok statikus metódusokkal történő meghatározására.
- Egy osztályfájl API került hozzáadásra, amely lehetővé teszi a Java osztályfájlok egyszerűbb és programozottabb elemzését, generálását és átalakítását.
Végül, ha többet szeretne megtudni róla, tájékozódhat a részletekről a következő link.
Töltse le a Java SE 24-t
A Java SE 24 új verziójának telepítése iránt érdeklődőknek tudniuk kell, hogy a fordítások (JDK, JRE és Server JRE) már készen állnak Linux, Windows és macOS.