Java SE 23 memperkenalkan peningkatan prestasi, penambahbaikan pengkompil dan lapan ciri pratonton

Java 23

JDK 23 membawa 12 penambahbaikan utama, daripada jenis primitif kepada import modul

Beberapa hari yang lalu, Oracle dilancarkan melalui catatan blog keluaran versi baharu Java SE 23. Dikeluarkan sebagai versi sokongan biasa (akan menerima kemas kini sehingga versi seterusnya). Versi LTS, seperti Java SE 21 dan Java SE 17, masing-masing akan mempunyai sokongan lanjutan sehingga 2031 dan 2029, manakala Java SE 8 dan SE 11 akan terus menerima sokongan lanjutan sehingga 2030 dan 2032.

Antara 23 ciri baru Java SE 23, menyerlahkan Pengaktifan lalai Pengumpul Sampah Generasi Z, mod operasi generatif yang memisahkan pemprosesan objek. Ini meningkatkan kecekapan pembersihan objek, mengurangkan beban CPU, penggunaan memori dan risiko penguncian peruntukan sumber.

Satu lagi kebaharuan ialah kemasukan Sokongan penurunan harga dalam JavaDoc, yang menjadikan dokumentasi kod lebih mudah dengan membenarkan penggunaan Markdown dan bukannya teg HTML digabungkan dengan JavaDoc.

Di Java SE 23 Corak padanan juga telah ditambah baik untuk menyokong jenis primitif, membenarkan penggunaannya dalam perisytiharan «contohnya» dan dalam blok suis. Ini membolehkan jenis primitif, seperti int atau bait, dikendalikan secara langsung dalam struktur aliran kawalan, meningkatkan kejelasan dan kefungsian kod.

Java SE 23 juga memperkenalkan sokongan awal untuk penyata import modul dengan import modul M, membolehkan anda mengimport semua pakej yang dieksport oleh modul tertentu pada satu baris.

Aspek penting lain adalah Kemas kini JavaFX 23, platform yang dipertingkatkan untuk pembangunan antara muka grafik. Bersama-sama dengan ini, Pengkompil GraalVM JIT telah disepadukan ke dalam JDK Teras Oracle, menawarkan prestasi yang lebih baik dan pengoptimuman masa jalan.

Mengenai GraalVM, versi baharunya dipersembahkan sokongan untuk menjalankan aplikasi dalam pelbagai bahasa, serta bahasa yang menjana kod LLVM, seperti C, C++ dan Rust. Versi ini meningkatkan penggunaan memori, mengurangkan saiz kod boleh laku, dan menawarkan sokongan untuk membenamkan Python dan WebAssembly ke dalam kod Java menggunakan kompilasi JIT.

Sebaliknya, ia membentangkan Pratonton ke-23 Vector API dalam Java SE XNUMX yang memperkenalkan ciri lanjutan untuk melaksanakan pengiraan vektor yang memanfaatkan arahan SIMD pada pemproses x86_64 dan AArch64. API ini membolehkan pembangun mengawal secara eksplisit vektorisasi operasi, berbanding dengan vektorisasi automatik yang ditawarkan oleh pengkompil JIT HotSpot. Ini meningkatkan prestasi apabila memproses data secara selari.

juga pelaksanaan kedua telah diperkenalkan pendahuluan a API Strim Lanjutan, yang membenarkan takrifan operasi perantaraan tersuai, berguna apabila transformasi data standard tidak mencukupi.

Daripada perubahan lain yang saya tahu menonjol versi baru ini:

  • Kaedah untuk mengakses memori luaran (di luar JVM) yang disediakan oleh kelas sun.misc.Tidak selamat Ia telah ditandakan sebagai usang dan dirancang untuk dialih keluar dalam versi akan datang.
  • Kelas java.io.Console kini termasuk kaedah baru seperti format, printf, readPassword dan readLine.
  • Pelaksanaan awal kedua API Kelas-Fail dibentangkan, yang memudahkan penghuraian, penjanaan dan penukaran fail kelas Java, membolehkan lebih fleksibiliti dalam manipulasi kod bait.
  • Kelas dan kaedah yang diisytiharkan secara tersirat membolehkan anda memudahkan kod anda dengan menghapuskan keperluan untuk menentukan pengisytiharan awam atau statik untuk kaedah utama.
  • Pelaksanaan ketiga Nilai Terskop, cara baharu untuk berkongsi data tidak berubah antara utas dengan lebih cekap, terutamanya dalam persekitaran di mana sejumlah besar utas maya digunakan.
  • Pratonton ketiga bagi Structured Concurrency API telah dicadangkan dalam Java SE 23, yang bertujuan untuk memudahkan pembangunan aplikasi berbilang benang. API ini membolehkan anda mengendalikan berbilang tugas yang dijalankan dalam urutan yang berbeza dengan cara yang lebih terkawal dan koheren, memperlakukannya seolah-olah ia adalah satu blok kod.

Akhir sekali, jika anda berminat untuk mengetahui lebih lanjut mengenainya, anda boleh merujuk butiran dalam pautan berikut.

Muat turun Java SE 23

Bagi mereka yang berminat untuk memasang versi baharu Java SE 23, anda harus tahu bahawa kompilasi (JDK, JRE dan Server JRE) sudah sedia untuk Linux, Windows dan macOS.