Den nya versionen av Java SE 18 har redan släppts och det är dess nyheter

Efter sex månaders utveckling, Oracle släppte släppet av den nya versionen av JavaSE 18 (Standard Edition), som använder OpenJDK open source-projektet som en referensimplementering.

I denna nya version av Java SE 18 kommer med undantag för borttagning av vissa föråldrade funktioner, bibehåller kompatibiliteten med tidigare versioner av Java-plattformen och de flesta tidigare skrivna Java-projekt kommer att fortsätta att fungera oförändrat när de körs med den nya versionen.

De viktigaste nya funktionerna i Java SE 18

I denna nya version av Java SE 18 är standardkodningen UTF-8. Java API:er som behandlar teckenkodad textdata kommer nu att använda UTF-8 som standard på alla plattformar, oavsett systeminställningar och regionala inställningar. För att återställa det gamla beteendet, där kodningen är vald med hänsyn till systemets lokalitet, kan du använda parametern "-Dfile.encoding=COMPAT".

En annan av förändringarna som sticker ut är han omdesignade java.lang.reflect API-implementeringen (Core Reflection), utformad för att få information om metoder, fält och konstruktörer av klasser, samt tillgång till klassernas interna struktur. api java.lang.reflektion i sig har inte ändrats, men implementeras nu med hjälp av identifierarna metoder som tillhandahålls av modulen java.lang.invoke, istället för att använda bytekodgeneratorer. Förändringen gjorde det möjligt att förena och underlätta underhållet av implementeringarna av java.lang.reflect och java.lang.invoke.

Utöver detta nämns också att den tredje preliminära implementeringen av Vector API föreslås, som tillhandahåller funktioner för vektorberäkningar som utförs med hjälp av vektorinstruktionerna för x86_64- och AArch64-processorerna och tillåter samtidiga operationer på flera värden (SIMD). Till skillnad från funktionerna i HotSpot JIT-kompilatorn för automatisk vektorisering av skalära operationer, är det nya API:et låter dig uttryckligen styra vektorisering för parallell databehandling.

Det framhävs också att lagt till ett SPI-gränssnitt (tjänsteleverantörens gränssnitt) för att lösa värdnamn och IP-adresser, som låter dig använda alternativa resolvers i java.net.InetAddress som inte är knutna till drivrutinerna som tillhandahålls av operativsystemet.

Däremot har det föreslagits andra preliminära implementeringen av Foreign Function & Memory API, med vilka applikationer kan interagera med kod och data utanför Java-körtiden. Det nya API:et möjliggör ett effektivt anrop av icke-JVM-funktioner y komma åt minnet som inte förvaltas av JVM. Du kan till exempel anropa funktioner från externa delade bibliotek och komma åt processdata utan att använda JNI.

Lade till en andra experimentella implementeringen av mönstermatchning i uttryck växla, som låter dig använda flexibla mallar istället för exakta värden i "case"-taggar, som täcker ett antal värden på en gång, vilket tidigare krävde besvärliga strängar av "if...else"-uttryck.

Förpackningen innehåller com.sun.net.httpserver, som inkluderar verktyget jwebserver och API av biblioteket med implementeringen från en enkel http-server för att visa statiskt innehåll (CGI och servletliknande kontroller stöds inte). Den inbyggda http-servern är inte optimerad för arbetsbelastningar och stöder inte åtkomstkontroll eller autentisering, eftersom den främst är avsedd att användas i utvecklingsprocessen för prototypframställning, felsökning och testprojekt.

Av de andra förändringarna som sticker ut:

  • JavaDoc stöder taggen "@utdrag» för att bädda in fungerande exempel och kodavsnitt i API-dokumentation, som kan nås med valideringsverktyg, syntaxmarkering och IDE-integration.
  • Utfasad och kommer att tas bort i en framtida version, kompletteringsmekanismen, samt relaterade metoder som t.ex Object.finalize(), Enum.finalize(), Runtime.runFinalization() och System.runFinalization().
  • sophämtarna ZGC (Z Garbage Collector), SerialGC och ParallelGC de stöder strängdeduplicering.

JavaSE 18 klassificeras som en vanlig supportversion, med uppdateringar som ska släppas innan nästa version. Grenen för långtidsstöd (LTS) bör vara Java SE 17, som kommer att få uppdateringar fram till 2029.

Det är viktigt att komma ihåg att från och med Java 10-utgåvan gick projektet över till en ny utvecklingsprocess, vilket innebär en kortare cykel för nyutgåvan. Ny funktionalitet utvecklas nu i en ständigt uppdaterad mastergren, som inkluderar redan genomförda ändringar och från vilka filialer förgrenar sig var sjätte månad för att stabilisera nya releaser.

Skaffa Java SE 18

För de som är intresserade av att kunna testa den här nya versionen, vänligen vet att builds är redo för Linux (x86_64, AArch64), Windows (x86_64) och macOS (x86_64, AArch64) och kan erhållas från länken nedan.


Lämna din kommentar

Din e-postadress kommer inte att publiceras. Obligatoriska fält är markerade med *

*

*

  1. Ansvarig för uppgifterna: Miguel Ángel Gatón
  2. Syftet med uppgifterna: Kontrollera skräppost, kommentarhantering.
  3. Legitimering: Ditt samtycke
  4. Kommunikation av uppgifterna: Uppgifterna kommer inte att kommuniceras till tredje part förutom enligt laglig skyldighet.
  5. Datalagring: databas värd för Occentus Networks (EU)
  6. Rättigheter: När som helst kan du begränsa, återställa och radera din information.