Altı aylık geliştirmeden sonra, Oracle, Java SE 24'ün yayınlandığını duyurduAçık kaynak kodlu OpenJDK projesi temel alınarak, daha önce geliştirilen projelerin çoğunun değişiklik yapılmadan çalışmaya devam edebilmesi için geriye dönük uyumluluğun sağlanması.
Uzun vadeli destek (LTS) sürümlerinin aksine, Java SE 24 düzenli bir destek sürümüdür, Bu da bir sonraki sürüme kadar güncellemelerin devam edeceği anlamına geliyor. Uzun vadeli istikrar arayanlar için Java SE 21 ve Java SE 17 sırasıyla 2031 ve 2029'a kadar desteklenmeye devam edecek. Ayrıca Java SE 8 LTS genişletilmiş desteği 2030 yılına kadar devam edecek, Java SE 11 ise 2032 yılına kadar yürürlükte kalacak.
İyileştirmeler ve yeni özellikler
Java SE 24'ün sunulan bu yeni sürümünde, en önemli gelişmeler tanıtımıdır Shenandoah çöp toplayıcısı için deneysel bir üretken mod (Yeni ve eski nesneleri ayrı ayrı işlemek için tasarlanmıştır). Bu yeni mod, kısa ömürlü nesnelerin temizlenmesinde verimliliği artırıyor, bellek kullanımını optimize ediyor ve değişen yükler altında daha kararlı bir performans sunuyor.
Öne çıkan bir diğer yenilik ise HotSpot JVM'de kompakt nesne başlıkları için deneysel destek96 bit sistemlerde boyutunu 64 bitten 64 bite düşürüyor. Bu optimizasyon, yığın boyutunu azaltmaya ve bellek önbelleğinin verimliliğini artırmaya yardımcı olur.
Çöp toplayıcı G1 ayrıca yeniden tasarımla optimize edildi uygulamaların belleğe erişimini izleyen engellerden biri. Bariyer genişletme artık C2 JIT derleyicisi içinde derleme sürecinin daha ileri aşamalarında gerçekleştiriliyor ve bu da uygulama türüne bağlı olarak ek yükü %20'ye kadar azaltıyor.
Güvenlik ve şifreleme iyileştirmeleri
Java SE 24, bir API sunar kriptografik anahtarların türetilmesi (KDF), ek anahtarların oluşturulmasına izin vermek gizli bir anahtardan ve keyfi bir veri kümesinden. Henüz önizleme aşamasında olan bu API, platform içerisindeki anahtar yönetimindeki güvenliği güçlendiriyor.
Buna ek olarak, API'lerin kullanımıyla ilgili uyarılar eklendi Java Native Arayüzü ve Yabancı Fonksiyon ve BellekYerel koda varsayılan erişimi kısıtlayacak bir bütünlük modunun gelecekteki uygulamasına hazırlık olarak. Ayrıca sun.misc.Unsafe sınıfı üzerinden harici bellek erişim yöntemleri kullanıldığında uyarılar etkinleştirildi ve VarHandle API'sine geçiş önerildi.
Öte yandan Java SE 24'te ML-KEM şifreleme algoritmaları için destek ve ML-DSA (olması için tasarlanmış kuantum hesaplama saldırılarına karşı dayanıklı). Bu algoritmalar ağ teorisi problemlerine dayanmaktadır ve çözüm sürelerinin hem geleneksel hem de kuantum bilgisayarlarda eşdeğer olmasını sağlar.
Tarayıcı eklenti desteğinin ortadan kalkmasıyla birlikte kullanım dışı kalan Java Güvenlik Yöneticisi kalıcı olarak kaldırıldı.
optimizasyonlar
JVM HotSpot artık sınıfların önceden yüklenmesine ve erken bağlanmasına izin veriyorUygulamanın başlatılmasını önemli ölçüde hızlandırır. İlk çalıştırmada, sınıfların durumu, gelecekteki başlatmalarda yüklemeyi kolaylaştırmak için önbelleğe alınır.
ayrıca Kapsamlı Değerlerin uygulanması iyileştirildi, şimdi piş parçacıkları arasında değişmez verilerin paylaşılmasına izin verir Geleneksel iş parçacığı yerel değişken mekanizmasının yerini alarak daha verimli hale getirir. Bu, aynı anda milyonlarca sanal iş parçacığıyla çalışıldığında özellikle faydalıdır.
Başka bir yenilik ise engellenen durumlarda sanal iş parçacıklarının optimizasyonu. Bu sürümde, engellenen sanal iş parçacığı platform iş parçacığını serbest bırakarak diğer iş parçacıkları tarafından yeniden kullanılmasına olanak tanır ve yüksek çoklu iş parçacığı kullanımına sahip sistemlerde ölçeklenebilirliği artırır.
Of the öne çıkan diğer değişiklikler:
- Stream API'ye özel ara işlemleri tanımlamanıza olanak tanıyan yeni uzantı.
- Desen eşleştirme motorları, switch ifadelerinde ve instanceof operatöründe ilkel türleri (int, byte, char, vb.) destekleyecek şekilde geliştirildi.
- Farklı iş parçacıklarındaki görevleri tek bir yürütme birimi gibi ele alarak çok iş parçacıklı uygulamaların geliştirilmesini basitleştiren Yapılandırılmış Eşzamanlılık API'sinin dördüncü önizleme sürümü eklendi.
- Sınıfları bildirmenin ve main() metodunu tanımlamanın daha basit bir yolu tanıtıldı ve böylece statik metotlara sahip bir public sınıf tanımlamaya gerek kalmadı.
- Java sınıf dosyalarını daha kolay ve programlı bir şekilde ayrıştırmanıza, oluşturmanıza ve dönüştürmenize olanak tanıyan bir sınıf dosyası API'si eklendi.
Son olarak, bu konuda daha fazla bilgi edinmek istiyorsanız, ayrıntılara şuradan bakabilirsiniz: aşağıdaki bağlantı.
Java SE 24'yi indirin
Java SE 24'nin yeni sürümünü yüklemek isteyenler için derlemelerin (JDK, JRE ve Sunucu JRE) halihazırda hazır olduğunu bilmelisiniz. Linux, Windows ve macOS.