Några dagar sen, Oracle presenteras genom ett blogginlägg release av den nya versionen av Java SE 23. Släppt som en vanlig supportversion (kommer att få uppdateringar till nästa version). LTS-versioner, som Java SE 21 och Java SE 17, kommer att ha utökat stöd till 2031 respektive 2029, medan Java SE 8 och SE 11 fortsätter att få utökat stöd till 2030 och 2032.
Bland de 23 nya funktioner av Java SE 23, belyser Standardaktivering av Generational Z Garbage Collector, ett generativt arbetssätt som separerar objektbearbetning. Detta förbättrar effektiviteten i objektrensningen, minskar CPU-belastningen, minnesförbrukningen och risken för resursallokeringslås.
En annan nyhet är införandet av Markdown-stöd i JavaDoc, vilket gör koddokumentationen enklare genom att tillåta användning av Markdown istället för HTML-taggar i kombination med JavaDoc.
I Java SE 23 Matchningsmönstret har också förbättrats för att stödja primitiva typer, så att de kan användas i deklarationen «instans av» och i kopplingsblock. Detta gör att primitiva typer, såsom int eller byte, kan hanteras direkt i kontrollflödesstrukturer, vilket förbättrar kodtydlighet och funktionalitet.
Java SE 23 introducerar också preliminärt stöd för modulimportförklaring med importmodul M, så att du kan importera alla paket som exporteras av en specifik modul på en enda rad.
En annan viktig aspekt är JavaFX 23 uppdatering, en förbättrad plattform för utveckling av grafiska gränssnitt. Tillsammans med detta, GraalVM JIT-kompilatorn har integrerats i JDK Oracles kärna, erbjuder bättre prestanda och körtidsoptimering.
Beträffande GraalVM, dess nya version presenterar stöd för kör applikationer på en mängd olika språk, såväl som språk som genererar LLVM-kod, som C, C++ och Rust. Denna version förbättrar minnesförbrukningen, minskar storleken på körbar kod, och erbjuder stöd för att bädda in Python och WebAssembly i Java-kod med hjälp av JIT-kompilering.
Å andra sidan presenterar den 23:e förhandsvisningen av Vector API i Java SE XNUMX som introducerar avancerade funktioner för att utföra vektorberäkningar som drar fördel av SIMD-instruktioner på x86_64- och AArch64-processorer. Detta API tillåter utvecklare att explicit styra vektoriseringen av operationer, i motsats till den automatiska vektoriseringen som erbjuds av HotSpot JIT-kompilatorn. Detta förbättrar prestandan vid parallellbearbetning av data.
också en andra implementering har införts preliminärt av en Extended Stream API, som tillåter definition av anpassade mellanliggande operationer, användbart när standarddatatransformationer inte är tillräckliga.
Av andra förändringar som jag vet sticker ut av denna nya version:
- Metoderna för att komma åt externt minne (utanför JVM) tillhandahålls av klassen sun.misc.Osäkert De har markerats som föråldrade och planeras att tas bort i framtida versioner.
- Klass java.io.konsol innehåller nu nya metoder som format, printf, readPassword och readLine.
- En andra preliminär implementering av Class-File API presenteras, som underlättar analys, generering och konvertering av Java-klassfiler, vilket möjliggör större flexibilitet vid bytekodmanipulation.
- Implicit deklarerade klasser och metoder låter dig förenkla din kod genom att eliminera behovet av att specificera offentliga eller statiska deklarationer för huvudmetoder.
- En tredje implementering av Avgränsade värden, ett nytt sätt att dela oföränderlig data mellan trådar mer effektivt, särskilt i miljöer där ett stort antal virtuella trådar används.
- En tredje förhandsvisning av Structured Concurrency API har föreslagits i Java SE 23, som syftar till att förenkla utvecklingen av flertrådade applikationer. Detta API låter dig hantera flera uppgifter som körs i olika trådar på ett mer kontrollerat och sammanhängande sätt, och behandla dem som om de vore ett enda kodblock.
Slutligen, om du är intresserad av att kunna veta mer om det, kan du konsultera detaljerna i följande länk.
Ladda ner Java SE 23
För den som är intresserad av att installera den nya versionen av Java SE 23, bör du veta att byggen (JDK, JRE och Server JRE) redan är redo för Linux, Windows och macOS.