Ny version med 12 JDK-förslag för att förbättra Java-språket samt utvecklingsplattformens prestanda, stabilitet och säkerhet.
Hem LEVERANTÖRORACLE Oracle lanserar Java 22

Oracle lanserar Java 22

Publicerat av: Redaktionen

Ny version med 12 JDK-förslag för att förbättra Java-språket samt utvecklingsplattformens prestanda, stabilitet och säkerhet.

Oracle har släppt Java 22 – den senaste versionen av världens främsta programmeringsspråk och utvecklingsplattform.

Java 22 (Oracle JDK 22) innehåller tusentals förbättringar av prestanda, stabilitet och säkerhet som hjälper utvecklare att öka produktiviteten, främja innovation och accelerera tillväxt i hela organisationen.

Dessa inkluderar förbättringar av Java-språket, dess API:er och prestanda, samt de verktyg som ingår i Java Development Kit (JDK).

”De nya förbättringarna i Java 22 gör det möjligt för fler utvecklare att snabbt och enkelt bygga och leverera funktionsrika, skalbara och säkra applikationer som hjälper organisationer över hela världen att utöka sina verksamheter”, säger Georges Saab, Senior Vice President för Oracle Java Platform och styrelseordförande för OpenJDK.

”Java 22 underlättar skapandet av en stor mängd nya applikationer och tjänster för både organisationer och utvecklare genom att tillhandahålla förbättringar som förenklar applikationsutvecklingen och utökar Javas räckvidd och gör det tillgängligt för utvecklare på alla kompetensnivåer.”

Det senaste Java Development Kit tillhandahåller uppdateringar och förbättringar med 12 förbättringsförslag för JDK (JEPs). JDK 22 har språkförbättringar från OpenJDK-projektet Amber (satser före super[…], namnlösa variabler och mönster, mallar för strängar och implicit deklarerade klasser och huvudmetoder för instanser); förbättringar från Project Panama (extern funktion, minnes-API och vektor-API); funktioner relaterade till Project Loom (strukturerad samtidighet och omfattade värden); basbibliotek och verktygsfunktioner (klassfils-API, köra källkodsprogram för flera filer och strömsamlare); och prestandauppdateringar (regionlåsning för G1).

Ny version med 12 JDK-förslag för att förbättra Java-språket samt utvecklingsplattformens prestanda, stabilitet och säkerhet.”Efter nästan tre decennier är Java lika relevant som någonsin tack vare sin förmåga att stödja komplexa utvecklingsuppgifter som sträcker sig över ett brett spektrum av användningsfall”, säger Arnal Dayaratna, vice vd för forskning, programvaruutveckling, IDC. ”Javas mångsidighet och omfattande verktygslåda stöder utvecklingen av verksamhetskritiska applikationer i produktionsklass i stor skala, vilket gör det till en viktig möjliggörande teknik när det gäller innovativa användningsfall som generativ AI.”

Viktiga uppdateringar i Java 22 är:

Funktioner i Project Amber

  • JEP 447: Satser före super(…): Ger utvecklare möjligheten att uttrycka konstruktorers beteende. Genom att tillåta att satser som inte refererar till instansen som skapas visas före ett explicit anrop av en konstruktor möjliggör den här funktionen en mer naturlig placering av logik som måste inkluderas i statiska tilläggsmetoder, mellanliggande tilläggskonstruktorer eller konstruktionsargument. Det bevarar också det befintliga säkerställandet att konstruktörer körs i toppordning under klassinstansiering, vilket hjälper till att säkerställa att kod i en underklass konstruktor inte kan störa superklassinstansiering. Den här funktionen kräver dessutom inga ändringar av Java Virtual Machine (JVM) och använder sig bara av JVM:s nuvarande kapacitet att verifiera och köra kod som finns före explicita konstruktoranrop inom konstruktorer.
  • JEP 456: Namnlösa mönster och variabler: Bidrar till att öka utvecklarnas produktivitet genom att utöka Java-språket med namnlösa variabler och mönster som kan användas när variabeldeklarationer eller kapslade mönster krävs men aldrig används. Detta minskar risken för fel, förbättrar läsbarheten för postmönster och gör det lättare att underhålla all kod.
  • JEP 459: Strängmallar (andra förhandsgranskningen): Förenklar utvecklingen av Java-program genom att göra det enkelt att uttrycka strängar som innehåller värden som beräknas vid körning och förbättrar samtidigt säkerheten för program som skapar strängar från användarangivna värden och överför dem till andra system. Dessutom förbättras läsbarheten för uttryck som blandas med text samt värden som inte är strängar som beräknas från literal text, och inbäddade uttryck kan skapas utan att behöva passera genom en mellanliggande strängrepresentation.
  • JEP 463: Implicit deklarerade klasser och huvudmetoder för instanser (andra förhandsgranskningen): Hjälper till att påskynda inlärningen genom att erbjuda en smidig övergång till Java-programmering så att eleverna kan skriva sina första program utan att behöva förstå språkfunktioner som är avsedda för stora program. Med den här funktionen kan lärare gradvis presentera koncept och eleverna kan skriva förenklade deklarationer för program med en enda klass och sömlöst utöka sina program för att använda mer avancerade funktioner i takt med att de utvecklar sina färdigheter.

 Funktioner i Project Loom

  • JEP 462: Strukturerad samtidighet (andra förhandsgranskningen): Hjälper utvecklare att effektivisera felhanteringen och avbokningen och förbättra observerbarheten genom att införa ett API för strukturerad samtidighet. Detta främjar en stil med samtidig programmering som kan eliminera vanliga risker som uppstår till följd av avbrott och avstängning – t.ex. trådläckor och avbokningsförseningar – och förbättrar observerbarheten för samtidig kod.
  • JEP 464: Värden som omfattas (andra förhandsgranskningen): Bidrar till att öka användarvänligheten, förståelsen, prestandan och robustheten i utvecklarnas projekt genom att möjliggöra delning av oföränderliga data inom och mellan trådar.

Funktioner i Project Panama

  • JEP 454: API för främmande funktioner och minnen: Ökar användarvänligheten, flexibiliteten, säkerheten och prestandan för utvecklare genom att införa ett API som gör det möjligt för Java-program att samverka med kod och data utanför Java-körningen. Genom att effektivt anropa främmande funktioner, t.ex. kod utanför Java Virtual Machine, och genom att på ett säkert sätt få åtkomst till främmande minne (dvs. minne som inte hanteras av JVM), gör det nya API:et att Java-program kan anropa ursprungliga bibliotek och bearbeta ursprungliga data utan att Java Native Interface krävs.
  • JEP 460: Vektor-API (sjunde inkubatorn): Gör det möjligt för utvecklare att uppnå prestanda som är bättre än likvärdiga skalära beräkningar genom att införa ett API för att uttrycka vektorberäkningar som tillförlitligt kompileras vid körning till vektorinstruktioner på CPU-arkitekturer som stöds.

 Basbibliotek och verktygsfunktioner

  • JEP 457: Klassfils-API (förhandsgranskning): Hjälper utvecklare att förbättra produktiviteten genom att tillhandahålla ett standard-API för parsning, generering och transformering av Java-klassfiler.
  • JEP 458: Köra källkodsprogram för flera filer: Gör det möjligt för utvecklare att välja om och när de ska konfigurera ett byggverktyg genom att göra det möjligt för startprogrammet för Java-applikationer att köra ett program som tillhandahålls som flera filer med Java-källkod.
  • JEP 461: Strömsamlare (förhandsgranskning): Hjälper utvecklare att öka produktiviteten genom att förbättra ström-API:et så att det har stöd för anpassade mellanliggande åtgärder, vilket gör att strömpipeliner kan transformera data på sätt som inte lätt kan uppnås med de befintliga inbyggda mellanliggande åtgärderna. Genom att göra strömpipeliner mer flexibla och uttrycksfulla och tillåta anpassade mellanliggande åtgärder för att manipulera oändligt stora strömmar gör den här funktionen det möjligt för utvecklare att bli mer effektiva när de läser, skriver och underhåller Java-kod.

 Prestandauppdateringar

  • JEP 423: Regionlåsning för G1: Bidrar till att minska fördröjningen genom att tillåta att viss skräpinsamling sker under vissa inbyggda biblioteksanrop som annars skulle ha krävt att insamlaren pausades. Detta uppnås genom att bevaka vilka objekt som behöver blockeras under dessa inbyggda biblioteksanrop och bara låsa de regioner som innehåller dessa objekt. Detta gör att skräpinsamlingen kan fortsätta normalt i olåsta regioner, även under inbyggda biblioteksanrop som annars skulle ha varit ett blockerande.

Java 22-versionen är ett resultat av ett kontinuerligt samarbete mellan Oracle och andra medlemmar i vår världsomspännande Java-utvecklargrupp via OpenJDK och Java Community Process (JCP). Utöver de nya förbättringarna och funktionerna stöds Java 22 av Java Management Service (JMS) – en inbyggd tjänst för Oracle Cloud Infrastructure (OCI) som erbjuder en enhetlig konsol och infopanel för att hjälpa organisationer att hantera Java-exekveringar och applikationer lokalt eller i valfritt moln. Mer information om funktionerna i Java 22 finns i det tekniska blogginlägget om Java 22.

Stödjande citat
Java ger ökad prestanda, effektivitet, innovation och kostnadsbesparingar när det distribueras i molnet i OCI, vilket är ett av de första hyperskalningsmolnen som har stöd för Java 22. Genom att leverera Oracle Java SE, Oracle GraalVM och Java SE Subscription Enterprise Performance Pack kostnadsfritt för OCI gör Java 22 det möjligt för utvecklare att bygga och distribuera applikationer som körs snabbare, bättre och med optimerad kostnadseffektivitet.

Oracle Java Universal SE Subscription är ett erbjudande med användningsbaserad betalning som förser kunderna med förstklassig support. Det omfattar trestegsstöd för hela Java-portföljen, rättighet till GraalVM, Java SE Subscription Enterprise Performance Pack, åtkomst till de avancerade funktionerna i Java Management Service och flexibiliteten att uppgradera i takt med företagets verksamhet. Prenumerationen hjälper IT-organisationerna att hantera komplexa frågor, hålla nere kostnaderna och minska säkerhetsriskerna.

Den globala Java-communityn tar till sig Java 22

”Inom det dynamiska ekosystemet som Türkiye Java Community (TJC) är, driver Oracles kontinuerliga stöd på vår utveckling”, säger Evren Tan, gemenskapsledare för TJC. ”I takt med att Java 22 utvecklas kan vi dra nytta av en rad moderna funktioner som ytterligare ökar utvecklarnas effektivitet och stärker vårt engagemang för att främja Java-teknik i Turkiet. Vi bjuder även in Java-utvecklare från hela världen att delta i TJC-aktiviteter, vilket visar på den välkomnande gemenskapsanda som gör Java så levande.”

”Javas popularitet som programmeringsspråk, plattform och utvecklingsgemenskap fortsätter att växa i Marocko och den afrikanska regionen”, säger Badr El Hourari, grundare och CIO, xHub. ”Vad gäller Java 22 är det kul att se att Oracles Java-team fokuserar på innovation som hjälper nya utvecklare att snabbare komma igång med Java, t.ex. JEP 463. Genom att förenkla språket blir det lättare för en helt ny generation programmerare att komma igång med Java. Även här i Marocko framhåller vi fortsatt Javas betydelse på den årliga konferensen Devoxx Morocco, och vi välkomnar alla utvecklare att delta i årets evenemang för att lyssna på några av de mest inflytelserika globala rösterna i Java-communityn.”

”Det är fantastiskt att se att Java 22 har funktioner för alla – för såväl studenter som seniora utvecklare, samt för både våghalsiga Java-entusiaster och organisationer som är på jakt efter stabilitet med prestanda”, säger Mala Gupta, Java developer advocate på JetBrains. ”Java har anammat en minimalistisk syn genom att fortsatt minska antalet formaliteter kopplade till att börja skriva kod via huvudmetoder för instanser och implicita klasser, vilket gör det lättare för folk att komma igång med Java. Med omarbetningen av konstruktorn (satser före super[…]) har Java återigen visat att det står bakom ansvarsfull innovation, och att man lättar på språkbegränsningar som har funnits sedan version 1.0 av Java utan att förstöra någon befintlig kod är fantastiskt. IntelliJ IDEA 2024.1 har stöd för Java 22-funktioner så att Java-utvecklare enkelt kan använda dem.”

”Helidon-teamet såg värdet i virtuella trådar direkt när de tillkännagavs. För Helidon 4 skrev teamet om Helidon-webbservern så att den nu använder virtuella trådar, vilket resulterade i mycket bättre prestanda och ökad utvecklarproduktivitet”, säger Tom Snyder, vice president of engineering, enterprise cloud native Java, Oracle. ”Med Java 22 får vi ytterligare en prestandahöjning för virtuella trådar, och dessa betydande förbättringar gynnar alla Helidon-användare.”

Mer information om Java och dess globala ekosystem finns på:

  • Dev.java: Den officiella portalen för att lära dig Java
  • Inside.java: Nyheter och åsikter från medlemmarna i Java-teamet på Oracle
  • Java YouTube: Den officiella Java YouTube-kanalen för Java-utbildningsvideor

 

Relaterade Artiklar

Vi använder cookies och andra identifierare för att förbättra din upplevelse. Detta gör att vi kan säkerställa din åtkomst, analysera ditt besök på vår webbplats. Det hjälper oss att erbjuda dig ett personligt anpassat innehåll och smidig åtkomst till användbar information. Klicka på ”Jag godkänner” för att acceptera vår användning av cookies och andra identifierare eller klicka ”Mer information” för att justera dina val. Jag Godkänner Mer Information >>

-
00:00
00:00
Update Required Flash plugin
-
00:00
00:00