Les principes de conception derrière les nouveaux cours de date et de temps:
Classe immuable
Avant Java8, le cours de date était tout mutable. Lorsque nous l'utilisons dans un environnement multithread, les programmeurs devraient confirmer que l'objet date est fileté. Les API de date et d'heure de Java8 fournissent des classes immuables en filetage. Les programmeurs n'ont pas à considérer la question de la concurrence.
Méthode de conception axée sur le modèle de domaine
Les nouvelles catégories de dates et de temps suivent la "conception du domaine". Il est facile pour les développeurs de comprendre les fonctions des méthodes et des classes.
Jetons ensuite un coup d'œil aux nouvelles API Date and Time:
1.java.time.localdate:
LocalDate ne fournit que des dates mais pas des informations de temps. Il est immuable et fileté.
Package org.smarttechie; import java.time.localate; import java.time.temporal.chronounit; / *** Cette classe démontre Java 8 API de données et de temps * @author siva prasad rao janapati * * / public class DatetimeDemonstration {/ *** @Param Args * / public static now LocalDate localDate = localDate.now (); System.out.println ("La date locale est ::" + localDate); // Trouvez la durée du mois. Autrement dit, combien de jours y a-t-il ce mois-ci. System.out.println ("Le nombre de jours disponibles pour ce mois ::" + localDate.LengthOfMonth ()); // Connaissez le nom du mois System.out.println ("Quel est le nom du mois? ::" + localDate.getMonth (). Name ()); // Ajouter 2 jours à la date d'aujourd'hui. System.out.println (localDate.Plus (2, chronounit.days)); // soustraire 2 jours d'aujourd'hui System.out.println (localDate.minus (2, chronounit.days)); // Convertir la chaîne à Date System.out.println (localDate.Parse ("2017-04-07")); }}2.java.time.Localtime:
Localtime ne fournit que des informations de temps et non de date, il est immuable et en filetage.
package org.smarttechie; importer java.time.localtime; import java.time.temporal.chronounit; / *** Cette classe démontre Java 8 API de données et de temps * @author siva prasad rao janapati * * / public class DatetimeDemonstration {/ *** @Param args * / public static static void Main (string) Localtime localtime = localtime.now (); System.out.println (localtime); // Obtenez l'heure de la journée System.out.println ("The Hour of the Day ::" + LocalTime.Gethour ()); // Ajouter 2 heures à l'heure. System.out.println (localtime.plus (2, chronounit.hours)); // Ajouter 6 minutes à l'heure. System.out.println (localtime.plusMinutes (6)); // soustraire 2 heures du système d'heure actuel.out.println (localtime.minus (2, chronounit.hours)); }}3.java.time.localatetime:
LocalDateTime fournit des informations sur l'heure et la date, elle est immuable et file
Package orr.smarttechie; import java.time.localatetime; importer java.time.temporal.chronounit; / *** Cette classe démontre Java 8 API Data and Time * @author siva prasad rao janapati ** / public class DatetimeDeMonstration {/ *** @param args * / public static natic void main LocalDateTime objet localDateTime localDateTime = localDateTime.now (); System.out.println (localDateTime); // Trouvez la durée du mois. Autrement dit, combien de jours y a-t-il ce mois-ci. System.out.println ("Le nombre de jours disponibles pour ce mois ::" + localDateTime.getMonth (). Length (true)); // Connaissez le nom du mois System.out.println ("Quel est le nom du mois? ::" + localDateTime.getMonth (). Name ()); // Ajouter 2 jours à la date d'aujourd'hui. System.out.println (localDateTime.plus (2, chronounit.days)); // soustraire 2 jours d'aujourd'hui System.out.println (localDateTime.minus (2, chronounit.days)); }} 4.java.time.year:
L'année fournit des informations sur l'année, elle est immuable et en filetage.
Package orr.smarttechie; import java.time.year; import java.time.temporal.chronounit; / *** Cette classe démontre Java 8 API Data and Time Class DatetimeMeDeMestration {/ *** @Parm Args * / Public Static Void Main (strigue) An.now (); System.out.println ("Year ::" + Year); // Sachez que l'année est le leap l'année ou non System.out.println ("est l'année [" + année + "] année leap?" + an.isleap ()); }}5.Java.Time.Duration:
La durée est utilisée pour calculer le nombre de secondes et le nombre de millisecondes contenues entre deux dates données. Il est immuable et fileté.
6.Java.Time.period:
La période est utilisée pour calculer combien de jours, de mois ou d'années sont inclus entre deux dates données. Il est immuable et fileté.
Package orr.smarttechie; import java.time.localate; importer java.time.period; import java.time.temporal.chronounit; / *** Cette classe démontre Java 8 données et temps api * @author siva prasad rao janapati ** / public class datetimedemonstration {/ *** @Param args ** Public class datetimedemonstration {/ *** @Param args ** Public Static Void (Striston (Striston (Stratique (Strugs args) {localDate localDate = localDate.now (); Période période = période.between (localDate, localDate.plus (2, chronounit.days)); System.out.println (period.getDays ()); }}