Java 9 - Ringkasan
JAVA 9 (alias jdk 1.9) adalah rilis utama pengembangan bahasa pemrograman JAVA. Versi awalnya dirilis pada 21 Sep 2017. Tujuan utama rilis Java 9 adalah -
Untuk membuat platform JDK dan Java Standard Edition menjadi modular dalam arti bahwa itu dapat diperkecil ke perangkat komputasi kecil dengan baik.
Untuk meningkatkan keamanan keseluruhan JDK dan Implementasi Java.
Untuk mempermudah proses pembangunan dan pemeliharaan pustaka kode java dan aplikasi besar untuk platform JAVA SE dan EE.
Untuk merancang dan mengimplementasikan sistem modul standar untuk Platform Java yang dapat diterapkan pada Platform dan JDK dengan mudah.
Fitur baru
Ada 90+ peningkatan yang ditambahkan ke Java 8, yang paling signifikan disebutkan di bawah -
Module - Jenis baru komponen pemrograman Java yang diperkenalkan sebagai modul, yang merupakan kumpulan kode dan data yang diberi nama dan dapat mendeskripsikan sendiri.
REPL (JShell) - Kemampuan Read-Eval-Print Loop (REPL) ditambahkan ke platform Java.
HTTP 2 Client - API HTTPClient baru yang mendukung websockets dan aliran HTTP 2 serta fitur server push.
Improved JavaDocs- Mendukung pembuatan output HTML5. Menyediakan kotak pencarian untuk menghasilkan dokumentasi API.
Multirelease JAR - Meningkatkan format JAR sehingga beberapa file kelas versi rilis Java dapat berdampingan dalam satu arsip.
Collection Factory Methods - Metode pabrik statis baru untuk antarmuka Daftar, Set, dan Peta untuk membuat contoh yang tidak dapat diubah dari koleksi tersebut.
Private Interface Methods - Antarmuka yang ditingkatkan dengan metode statis pribadi dan pribadi.
Process API Improvements - Peningkatan API untuk mengontrol dan mengelola proses sistem operasi.
Stream API Improvements - Keamanan dan ketahanan yang ditingkatkan dengan memungkinkan aliran masuk data serialisasi objek untuk difilter.
Try With Resources improvement - Sekarang variabel terakhir dapat digunakan sebagai sumber daya dalam pernyataan coba-dengan-sumber daya.
Enhanced @Deprecated Annotation - Anotasi @Deprecated diubah untuk memberikan lebih banyak informasi tentang status dan disposisi yang diinginkan dari API.
Inner Class Diamond Operator - Izinkan operator berlian untuk digunakan dengan kelas anonim jika tipe argumen dari tipe yang disimpulkan dapat dilambangkan.
Optional Class Improvements - Metode baru yang berguna ditambahkan ke kelas java.util.Optional.
Multiresolution Image API - Mendukung enkapsulasi sekumpulan gambar dengan resolusi berbeda menjadi satu gambar multiresolusi.
CompletableFuture API improvements - Mekanisme asinkron dari kelas CompletableFuture dapat melakukan tindakan ketika proses keluar dengan metode ProcessHandle.onExit.
Lightweight JSON - API ringan yang diperkenalkan untuk menggunakan dan menghasilkan dokumen dan aliran data melalui json di java 9.
Reactive Streams API - Reactive Streams API baru di Java SE 9 telah diperkenalkan untuk mendukung pemrograman reaktif di java 9.