Java 8 a une toute nouvelle bibliothèque pour les dates et les heures dans le paquet java.time, ce qui est très appréciable pour tous ceux qui ont déjà utilisé JodaTime ou qui ont du mal à créer leurs propres méthodes d’aide au traitement des dates. Beaucoup de classes de ce paquet représentent des horodatages et ont des méthodes d'assistance comme getHour()
obtenir des heures d'horodatage, des getMinute()
minutes d'horodatage, des getNano()
nanos d'empreintes digitales, etc.
J'ai remarqué qu'ils ne disposent pas d'une méthode appelée getMillis()
pour obtenir les millis de l'horodatage. Au lieu de cela, il faudrait appeler une méthode get(ChronoField.MILLI_OF_SECOND)
. Pour moi, cela ressemble à une incohérence dans la bibliothèque. Quelqu'un sait-il pourquoi une telle méthode fait défaut ou que Java 8 est en cours de développement, y a-t-il une possibilité qu'il soit ajouté plus tard?
https://docs.oracle.com/javase/8/docs/api/java/time/package-summary.html
Les classes définies ici représentent les principaux concepts date-heure, notamment les instants, les durées, les dates, les heures, les fuseaux horaires et les périodes. Ils sont basés sur le système de calendrier ISO, qui est le calendrier mondial de facto qui suit les règles proleptiques grégoriennes. Toutes les classes sont immuables et thread-safe.
Chaque instance d’heure de date est composée de champs facilement mis à disposition par les API. Pour un accès de niveau inférieur aux champs, reportez-vous au
java.time.temporal
package. Chaque classe prend en charge l’impression et l’analyse de toutes sortes de dates et d’heures. Reportez-vous aujava.time.format
package pour les options de personnalisation ...
Exemple de ce type de classe:
https://docs.oracle.com/javase/8/docs/api/java/time/LocalDateTime.html
Une date-heure sans fuseau horaire dans le système de calendrier ISO-8601, telle que 2007-12-03T10: 15: 30.
LocalDateTime
est un objet date-heure immuable qui représente une date-heure, souvent considérée comme année-mois-jour-heure-minute-seconde. Vous pouvez également accéder à d'autres champs de date et d'heure, tels que le jour de l'année, le jour de la semaine et la semaine de l'année. Le temps est représenté à la précision nanoseconde. Par exemple, la valeur "2 octobre 2007 à 13h45: 30.30.123456789" peut être enregistrée dans un fichierLocalDateTime
...
Instant
classe
get()
, plutôt que de leur donner des noms individuels et uniques. Si cela vous dérange, écrivez une classe qui hérite de la classe d'origine et mettez votre propregetMillis()
méthode dans la nouvelle classe.