Il framework java.time sostituisce entrambe le classi di data e ora legacy e Joda-Time
Aggiornamento: le vecchie classi data-ora fornite con le prime versioni di Java ora sono legacy, soppiantato ufficialmente dalle classi java.time integrate in Java 8, Java 9 e versioni successive.
Date
, Calendar
, SimpleDateFormat
e le classi di data% di java.sql.*
dovrebbero essere evitate. Non c'è mai bisogno di usare queste classi confuse, fastidiose, mal progettate. Sono completamente sostituiti dalle classi java.time. Il loro unico scopo ora è mantenere il vecchio codice esistente. Quando si interfaccia con il vecchio codice, è possibile convertire in / da java.time chiamando nuovi metodi aggiunti alle vecchie classi. Per maggiori informazioni sulla conversione, vedi: Converti java.util.Date a che tipo "java.time"? .
Il progetto Joda-Time , ora in modalità di manutenzione , consiglia la migrazione a classi java.time . Il progetto Joda-Time ha ispirato il framework java.time. Entrambi sono guidati dallo stesso uomo, Stephen Colebourne . Puoi pensare a java.time come a una riscrittura / riprogettazione di Joda-Time, a tutto il nuovo codice, ma usando ciò che è stato appreso nel corso degli anni dalla costruzione della prima e completa libreria data-ora del settore.
Per ulteriori informazioni, consulta l' tutorial di Oracle . E cerca Stack Overflow per molti esempi e spiegazioni.
Gran parte della funzionalità java.time è backportata su Java 6 & 7 in ThreeTen-Backport e ulteriormente adattato a Android in ThreeTenABP (vedi Come usare ... ).
Il progetto ThreeTen-Extra estende java.time con classi aggiuntive. Questo progetto è un terreno di prova per possibili aggiunte future a java.time. Potresti trovare alcune classi utili come Interval
, < a href="http://www.threeten.org/threeten-extra/apidocs/org/threeten/extra/YearWeek.html"> YearWeek
, YearQuarter
e more .