Comunicato stampa

Oracle rilascia Java 25

La nuova release offre 18 JDK Enhancement Proposal che migliorano il linguaggio Java, espandono le sue funzionalità AI e permettono agli sviluppatori di essere più produttivi

I miglioramenti a performance, stabilità e sicurezza della piattaforma aiutano ad accelerare la crescita

La disponibilità di supporto nel lungo termine consente ai clienti di migrare alla nuova versione seguendo i propri ritmi

Austin (USA) e Milano—16 settembre 2025
Java 25

Oracle ha annunciato oggi la disponibilità di Java 25, la nuova versione del linguaggio di programmazione e della piattaforma di sviluppo numero uno al mondo.

Java 25 (Oracle JDK 25) aiuterà le organizzazioni a crescere; sono stati introdotti migliaia di miglioramenti che rendono gli sviluppatori più produttivi e aumentano le performance, la stabilità e la sicurezza della piattaforma. Inoltre, Oracle  ha annunciato che offrirà supporto a lungo termine per Java 25, per almeno otto anni.

"Entrando nel suo quarto decennio di vita, Java continua a fornire funzionalità per garantire che le applicazioni  - comprese quelle alimentate e integrate con l’AI – siano altamente efficienti e scalabili su tutte le piattaforme hardware, ha dichiarato Arnal Dayaratna, research vice president, software development di IDC. "Oracle continua a gestire la tecnologia Java con l’obiettivo di favorire l'evoluzione del linguaggio e della piattaforma di programmazione, in particolare in relazione all'intelligenza artificiale e alla sicurezza. Il rilascio di nuove release ogni sei mesi, a  cadenza costante, è pensato per accelerare ulteriormente l'innovazione. Di conseguenza, Java riesce ad offrire un flusso continuo di funzionalità moderne per  lo sviluppo di applicazioni di nuova generazione, basate sull'intelligenza artificiale".

"Java ha raggiunto un traguardo significativo quest'anno con il suo 30° anniversario. La piattaforma e il linguaggio continuano a evolversi per aiutare gli sviluppatori a creare rapidamente e facilmente applicazioni arricchite con funzionalità innovative di intelligenza artificiale e sicurezza", ha dichiarato Georges Saab, senior vice president, Oracle Java Platform e Chair, OpenJDK governance board. "Java 25 è riprova della costanza con cui Oracle investe per offrire funzionalità che servono per sviluppare soluzioni AI e semplificano il linguaggio, per facilitare l’apprendimento di Java  da parte dei nuovi sviluppatori e dei team IT".

Oracle ha intenzione di offrire supporto a lungo termine per Java 25 per almeno otto anni. In questo modo tutte le organizzazioni avranno la flessibilità necessaria per mantenere le applicazioni in produzione più a lungo con una manutenzione minima e, infine, di eseguire la migrazione alle proprie condizioni.  Oracle JDK 25 riceverà aggiornamenti trimestrali di sicurezza e performance fino a settembre 2028 in base alle Oracle No-Fee Terms and Conditions (NFTC); gli aggiornamenti JDK 25 rilasciati dopo tale data saranno offerti in base alla Java SE OTN License (OTN) pianificata fino almeno a settembre 2033.

JDK Enhancement Proposals (JEPs) principali

Funzioni di linguaggio di Oracle JDK 25

  • JEP 507: Primitive Types in Patterns, instanceof, and switch (terza anteprima): aiuta gli sviluppatori ad aumentare la produttività della programmazione Java rendendo il linguaggio  più uniforme ed espressivo. Per esempio, gli sviluppatori possono migliorare la corrispondenza dei pattern rimuovendo le restrizioni relative ai tipi primitivi che incontrano quando utilizzano la corrispondenza dei pattern, instanceof e switch. Consente, inoltre, di utilizzare pattern di tipo primitivo in tutti i contesti ed estende instanceof e switch a tutti i tipi primitivi. Il supporto di tipi primitivi andrà particolarmente a vantaggio degli sviluppatori che creano applicazioni che integrano l'inferenza AI.
  • JEP 511: Module Import Declarations: aiutano gli sviluppatori ad accelerare la produttività consentendo loro di importare facilmente tutti i pacchetti esportati da un modulo, senza aver bisogno che anche il codice di importazione si trovi in un modulo. Questo semplifica il riutilizzo delle librerie modulari da parte di tutti gli sviluppatori e consente anche a sviluppatori principianti di utilizzare librerie di terze parti e classi Java fondamentali, senza preoccuparsi del punto in cui si trovano nella gerarchia di pacchetti. Inoltre, gli sviluppatori possono evitare il noise di varie dichiarazioni type-import-on-demand quando utilizzano diverse parti dell'API esportate da un modulo, il che è vantaggioso per realizzare applicazioni semplici che uniscono l'inferenza AI e i flussi di lavoro delle librerie più diffuse.
  • JEP 512: Compact Source Files and Instance Main Methods: aiuta a rendere il linguaggio Java più accessibile a principianti e amministratori di sistema e IT offrendo una programmazione Java semplice e on-ramp. Gli studenti possono scrivere i loro primi programmi in modo conciso, senza dover comprendere le funzioni di linguaggio progettate per programmi di grandi dimensioni e possono far crescere la loro capacità di coding  man mano che le loro competenze si espandono. Inoltre, gli amministratori di sistema e IT, che potrebbero non essere esperti Java, possono aver meno bisogno di scrivere  piccoli programmi,  come script e command-line utility.
  • JEP 513: Flexible Constructor Bodies: consente agli sviluppatori di migliorare la sicurezza e l'affidabilità del codice attraverso la convalida dell'input e calcoli sicuri, prima di richiamare esplicitamente un costruttore. Ciò aumenta la sicurezza del codice, consentendo espressioni costruttori più naturali e abilitando l'inizializzazione del campo prima che siano visibili ad altri codici classe, come i metodi chiamati da un costruttore superclasse. Inoltre, migliora l'affidabilità impedendo ai costruttori sottoclasse di interferire con la creazione di istanze superclasse.

Librerie Oracle JDK 25

  • JEP 505: Structured Concurrency (quinta anteprima): aiuta gli sviluppatori a migliorare la manutenibilità, l'affidabilità e l'osservabilità del codice multithreaded semplificando la programmazione concorrente. I gruppi di attività correlate eseguiti all'interno di thread diversi sono gestiti come una singola unità di lavoro, e la concorrenza strutturata aiuta a ridurre i rischi più comuni derivanti da  operazioni di annullamento e chiusura, come le perdite di thread e i ritardi di annullamento. Ciò è particolarmente vantaggioso per lo sviluppo dell'intelligenza artificiale, che spesso implica l'esecuzione di più task in parallelo.
  • JEP 506: Scoped Values: aiuta gli sviluppatori ad aumentare la facilità d'uso, la comprensibilità, le prestazioni e l'affidabilità dei loro progetti, consentendo la condivisione di dati immutabili all'interno dei thread e fra thread diversi. Ciò è particolarmente vantaggioso per le applicazioni che utilizzano piattaforme AI, web frame e microservizi. Inoltre, è più facile ragionare con i valori delimitati rispetto alle variabili thread-local e si riducono i costi di spazio e tempo, soprattutto se si utilizzano anche thread virtuali e concorrenza strutturata.
  • JEP 502: Stable Values (anteprima): aiuta gli sviluppatori ad aumentare la flessibilità introducendo un'API per valori stabili, ovvero oggetti che contengono dati immutabili. Poiché i valori stabili sono considerati costanti dalla Java Virtual Machine, essi consentono le stesse ottimizzazioni di performance della dichiarazione finale di un campo e offrono, al contempo, una maggiore flessibilità nelle tempistiche di inizializzazione.
  • JEP 508: Vector API (decima versione incubator): aiuta gli sviluppatori a migliorare la produttività con un'API che esprime calcoli vettoriali che si compilano in modo affidabile in fase di esecuzione,  per eseguire istruzioni vettoriali ottimali sulle architetture di CPU supportate. Di conseguenza, gli sviluppatori possono ottenere prestazioni superiori a quelle dei calcoli scalari equivalenti, spesso utilizzati negli scenari di inferenza e calcolo dell'intelligenza artificiale.

Librerie di sicurezza Oracle JDK 25

  • JEP 470: PEM Encodings of Cryptographic Objects (anteprima): aiuta gli sviluppatori ad aumentare la produttività tramite una nuova API per la codifica degli oggetti. L'API codifica gli oggetti che rappresentano chiavi crittografiche, certificati e liste di revoca dei certificati in un formato mail transport ampiamente utilizzato e ottimizzato per la privacy, e decodifica da tale formato gli oggetti. Ciò facilita l’integrazione delle applicazioni Java con sistemi di autenticazione di sicurezza e dispositivi come Yubikeys.
  • JEP 510: Key Derivation Function API: aiuta gli sviluppatori a prepararsi per gli ambienti di calcolo quantistico, offrendo un'API per le funzioni di derivazione delle chiavi, che sono algoritmi crittografici per derivare chiavi aggiuntive da una chiave segreta e altri dati. É un elemento di base necessario per supportare la crittografia a chiave pubblica ibrida e aiuterà a rendere agevole l’adozione della crittografia quantistica.

Aggiornamenti delle performance di Oracle JDK 25

  • JEP 519: Compact Object Headers: aiuta gli sviluppatori ad aumentare la produttività riducendo le dimensioni delle intestazioni degli oggetti a 64 bit su architetture a 64 bit. Ciò migliora la densità di implementazione e aumenta la localizzazione dei dati, riducendo al contempo le dimensioni degli oggetti e l'impronta di memoria su carichi di lavoro realistici.
  • JEP 514: Ahead-of-Time Command-Line Ergonomics: aiuta gli sviluppatori ad accelerare la produttività semplificando la creazione di cache ahead-of-time senza perdita di espressività. Ciò accelera l'avvio delle applicazioni Java semplificando i comandi necessari per i casi d'uso più comuni.
  • JEP 515: Ahead-of-Time Method Profiling: aiuta gli sviluppatori ad aumentare la produttività aumentando le performance delle applicazioni. Il tempo di riscaldamento viene migliorato,  spostando la raccolta dei profili di esecuzione del metodo iniziale dai cicli di produzione ai cicli di formazione, trasmettendo i profili tramite la cache ahead-of-time. Ciò consente al compilatore just-in-time di generare codice nativo immediatamente all'avvio dell'applicazione anziché attendere la raccolta dei profili. Elimina, inoltre, la necessità di qualsiasi modifica a codice di applicazioni, librerie o framework e rimuove eventuali vincoli all'esecuzione delle applicazioni.

Aggiornamenti per il monitoraggio in Oracle JDK 25

  • JEP 509: JFR CPU-Time Profiling (sperimentale): aiuta gli sviluppatori a migliorare la produttività e l'efficienza dei loro programmi migliorando JDK Flight Recorder (JFR) per acquisire informazioni di profilazione CPU-time più accurate su Linux e aiutando a identificare gli elementi del programma da ottimizzare.
  • JEP 518: JFR Cooperative Sampling: aiuta gli sviluppatori ad aumentare l'affidabilità del codice migliorando la stabilità del JFR quando campiona in modo asincrono stack di thread Java. Ciò consente al JFR di ridurre al minimo il bias al punto di sicurezza nei campionatori di eventi, evitando al contempo euristiche rischiose per la generazione di tracce stack al di fuori dei punti di sicurezza. Consente, inoltre, la creazione di richieste di campioni in risposta a un evento hardware o all'interno di un gestore di segnali e riduce la quantità di lavoro che il thread campionatore deve eseguire.
  • JEP 520: JFR Method Timing & Tracing: aiuta gli sviluppatori ad accelerare la produttività consentendo loro di identificare i colli di bottiglia nelle performance delle applicazioni, di ottimizzare il codice e di trovare le cause principali dei bug. Ciò si ottiene estendendo il JFR con strutture per la temporizzazione del metodo e il tracciamento tramite strumentazione bytecode.

Le funzioni della release Java 25 sono frutto di una collaborazione stretta e continua fra Oracle e altri membri della community globale di sviluppatori Java, tramite OpenJDK e Java Community Process (JCP). Per maggiori dettagli sulle funzioni di Java 25, consulta il blog tecnico su Java 25. Le innovazioni Java provenienti dalla community globale verranno presentate al JavaOne 2026, che si terrà a Redwood Shores, in California, dal 17 al 19 marzo 2026.

"Fin dalla sua nascita, 30 anni fa, Java è stato un linguaggio affidabile e sicuro per la creazione di applicazioni aziendali su larga scala", ha affermato Adam Resnick, research manager, modern software development and developer trends, di IDC. "Come evidenziato durante l’ultima  conferenza JavaOne, Java è pronto ad ampliare la sua portata anche per gli sviluppatori alle prime armi e gli studenti di programmazione. Nuove funzionalità che riducono la complessità e offrono un feedback immediato stanno semplificando la creazione di programmi di livello principiante. Java evolve in modo ponderato ed equlibrato, così da essere sempre più accessibile per  agli sviluppatori meno esperti e preservare, allo stesso tempo, la robustezza richiesta per le soluzioni di livello enterprise”.

Supportare la community Java globale con l'innovazione cloud

Implementare Java su Oracle Cloud Infrastructure (OCI), che è il primo cloud di livello hyperscale a supportare Oracle JDK 25, permette di ottenere livelli superiori di prestazioni ed efficienza, innovazione e risparmio sui costi. Offrendo Oracle Java SE e funzionalità avanzate come il Java SE Subscription Enterprise Performance Pack senza alcun costo aggiuntivo su OCI, Java 25 consente agli sviluppatori di creare e implementare applicazioni che vengono eseguite più velocemente, più efficacemente e con un rapporto prezzo/prestazioni ottimizzato.

L'Oracle Java SE Universal Subscription offre ai clienti un supporto di qualità eccellente. Questa offerta comprende il Java SE Subscription Enterprise Performance Pack, il supporto per tutto il portfolio Java, Java Management Service; inoltre, può essere aggiornata in modo flessibile, in funzione delle esigenze di business dei clienti. Ciò consente ai team IT di gestire la complessità, ridurre i rischi per la sicurezza e contenere i costi. 

Oltre ai vantaggi di Java su OCI e di Oracle Java Universal SE Subscription, Java 25 offre  migliori prestazioni applicative e una vasta gamma di funzionalità di intelligenza artificiale e sicurezza, tra cui la post-quantum cryptography (PQC), per migliorare le performance, la stabilità e la sicurezza delle implementazioni della piattaforma Java SE e del JDK.

I leader della community Java globale accolgono Oracle JDK 25

"Quando Java è passato a release semestrali, sembrava impossibile che si potessero suddividere in pezzi abbastanza piccoli nuove funzionalità interessanti, e si sospettava che alcune release non avrebbero portato con sé molti contenuti", ha affermato Trisha Gee, head of advocacy, Gradle, Inc. "Ci sbagliavamo di grosso! Ogni nuova release di Java ha funzionalità interessanti e utili, ed è stata una meravigliosa lezione su come suddividere grandi deliverable in piccoli pezzi indipendenti. Ad esempio, le varie funzionalità di abbinamento dei pattern sono indipendenti e possono essere distribuite in modo indipendente, ma tutte insieme creano un fantastico set di nuove funzionalità per Java e un nuovo modo per gli sviluppatori Java di pensare a come risolvere i loro problemi. Java va sempre più forte".

"JEP 512 introduce 'Compact Source Files and Instance Main Methods' che semplifica notevolmente Java per i principianti consentendo loro di scrivere programmi senza il tradizionale codice boilerplate public static void main (String[] args),", ha affermato Rémi Forax, professore associato dell'Université Gustave Eiffel. "Gli studenti ora possono iniziare con programmi semplici ed espandere gradualmente la loro comprensione a concetti più avanzati man mano che imparano, creando un percorso di apprendimento fluido che parte dai concetti di programmazione di base e arriva alla programmazione completa orientata agli oggetti".

"Le mie parti preferite di Java 25 sono i file di origine compatti, i metodi principali delle istanze e le dichiarazioni di importazione dei moduli, poiché queste funzionalità permettono di introdurre rapidamente a Java i programmatori ai primi passi", ha dichiarato Cay Horstmann, professore emerito presso la San José State University. "Rappresentano un vantaggio anche per i programmatori esperti, perché espandono la portata di Java a piccole attività quotidiane. Trovo molto soddisfacente riscrivere shell fragili o script Python in Java, un linguaggio fortemente tipizzato e industrializzato, che offre tanti strumenti a supporto”.

"Quando la cadenza semestrale di rilascio delle funzionalità è stata annunciata con Java 9, ero uno delle persone più scettiche, e l'ho persino detto pubblicamente. Oracle sarebbe riuscita a farcela? Ho avuto i miei dubbi, poiché ci eravamo abituati a una nuova release ogni tre anni", ha detto il dottor Heinz M. Kabutz, autore di The Java Specialists’ Newsletter. "Ma in effetti Oracle ce l'ha fatta, e con entusiasmo. Sotto la guida di Oracle e con un'enorme community a sospingerlo in avanti, Java sta scavalcando altri linguaggi. Registri, file sorgente compatti e importazioni di moduli rendono l'on-ramp per Java molto più semplice e i thread virtuali, l'API di memoria esterna, l'API vettoriale e ZGC rendono Java adatto per la creazione di sistemi scalabili tecnicamente avanzati".

"La più grande forza di Java è la sua community. Nella community JUG Oberpfalz, stiamo rilanciando la nostra serie di talk "(Re)Start with Java" per il 2025 e gli sviluppatori restano sempre colpiti da quanto il linguaggio si sia evoluto", ha dichiarato Richard Fichtner, CEO di XDEV Software GmbH. " Java oggi è più produttivo, sicuro e innovativo che mai, ed è prova di ciò che si può ottenere con l’impegno di una community che collabora”

Per ulteriori informazioni su Java e sul suo ecosistema globale, visita:

  • Dev.java: il portale ufficiale per scoprire di più su Java;
  • Inside.java: notizie e opinioni dai membri del team Java di Oracle;
  • Java YouTube: il canale ufficiale di Java su YouTube, per guardare video didattici.

Ulteriori risorse

 

Informazioni di contatto per la stampa

Simona Menghini

ORACLE Italia
342-6989617

Caterina Ferrara, Viviana Viviani, Ilaria Nerazzini

Prima Pagina Comunicazione
0291339.811

Informazioni su Oracle

Oracle offre suite integrate di applicazioni e un'infrastruttura sicura e autonoma in Oracle Cloud. Per maggiori informazioni su Oracle (NYSE: ORCL), visita il sito www.oracle.com.

Dichiarazione di non responsabilità per prodotti futuri

Le informazioni di cui sopra hanno lo scopo di illustrare la nostra direzione di prodotto generale. Sono esclusivamente a scopo informativo e non possono essere incorporate in alcun contratto. Non rappresentano alcun impegno nel fornire materiale, codice o funzionalità e non vi si deve fare affidamento nel prendere decisioni di acquisto. Lo sviluppo, il rilascio, le tempistiche e i prezzi di tutte le funzioni o funzionalità descritte per i prodotti Oracle possono cambiare e rimangono a esclusiva discrezione di Oracle Corporation.

Marchi registrati

Oracle, Java, MySQL e NetSuite sono marchi commerciali registrati di Oracle Corporation. NetSuite è stata l'azienda cloud che ha inaugurato la nuova era del cloud computing.