Looking for java Keywords? Try Ask4Keywords

Java LanguageDatumsklasse


Syntax

  • Date object = new Date();
  • Date object = new Date(long date);

Parameter

Parameter Erläuterung
Kein Parameter Erzeugt ein neues Date-Objekt mit der Zuordnungszeit (auf die nächste Millisekunde)
langes Datum Erzeugt ein neues Date-Objekt mit einer auf "Millisekunden" seit "der Epoche" (1. Januar 1970, 00:00:00 GMT) eingestellten Zeit.

Bemerkungen

Darstellung

Intern wird ein Java Date-Objekt als Long dargestellt. es ist die Anzahl der Millisekunden seit einer bestimmten Zeit (als Epoche bezeichnet ). Die ursprüngliche Java Date-Klasse verfügte über Methoden zum Umgang mit Zeitzonen usw., die jedoch zugunsten der damals neuen Calendar-Klasse verworfen wurden.

Wenn Sie also nur eine bestimmte Zeit in Ihrem Code verwenden möchten, können Sie eine Date-Klasse erstellen und speichern usw. Wenn Sie eine vom Menschen lesbare Version dieses Datums ausdrucken möchten, erstellen Sie jedoch eine Calendar-Klasse Verwenden Sie die Formatierung, um Stunden, Minuten, Sekunden, Tage, Zeitzonen usw. zu erstellen. Beachten Sie, dass eine bestimmte Millisekunde als unterschiedliche Stunden in verschiedenen Zeitzonen angezeigt wird. Normalerweise möchten Sie eine in der "lokalen" Zeitzone anzeigen, aber die Formatierungsmethoden müssen berücksichtigen, dass Sie sie möglicherweise für eine andere Zeitzone anzeigen möchten.

Beachten Sie außerdem, dass die von JVMs verwendeten Uhren normalerweise keine Millisekundengenauigkeit haben. Die Uhr kann nur alle 10 Millisekunden "ticken". Wenn Sie also die Zeit steuern, können Sie sich nicht darauf verlassen, die Dinge auf diesem Pegel genau zu messen.

Anweisung importieren

import java.util.Date;

Die Date Klasse kann aus dem java.util Paket importiert werden.

Vorsicht

Date sind veränderlich, sodass die Verwendung dieser Codes das Schreiben von threadsicherem Code erschweren oder versehentlich Schreibzugriff auf den internen Status ermöglichen kann. In der untenstehenden Klasse ermöglicht die Methode getDate() beispielsweise dem Aufrufer, das Transaktionsdatum zu ändern:

public final class Transaction {
  private final Date date;

  public Date getTransactionDate() {
    return date;
  }
}

Die Lösung ist, entweder eine Kopie des date oder die in Java 8 eingeführten neuen APIs in java.time .

Die meisten Konstruktormethoden in der Date Klasse sind veraltet und sollten nicht verwendet werden. In fast allen Fällen ist es ratsam, die Calendar Klasse für Datumsvorgänge zu verwenden.

Java 8

Java 8 führt eine neue Zeit- und Datums-API in das Paket java.time , einschließlich LocalDate und LocalTime . Die Klassen im Paket java.time bieten eine überarbeitete API, die einfacher zu verwenden ist. Wenn Sie in Java 8 schreiben, wird dringend empfohlen, dass Sie diese neue API verwenden. Siehe Datum und Uhrzeit (java.time. *) .

Datumsklasse Verwandte Beispiele