モジュール java.base
パッケージ java.time

クラスLocalDateTime

java.lang.Object
java.time.LocalDateTime
すべての実装されたインタフェース:
Serializable, Comparable<ChronoLocalDateTime<?>>, ChronoLocalDateTime<LocalDate>, Temporal, TemporalAccessor, TemporalAdjuster

public final class LocalDateTime extends Object implements Temporal, TemporalAdjuster, ChronoLocalDateTime<LocalDate>, Serializable
ISO-8601暦体系のタイムゾーンのない日付/時間、2007-12-03T10:15:30など。

LocalDateTimeは、日付/時間(年-月-日-時-分-秒として表示されることが多い)を表す不変の日付/時間オブジェクトです。 他の日付と時間フィールド(「年の日」、曜日、「年の週番号」など)にもアクセスできます。 時間は、ナノ秒の精度まで表されます。 たとえば、「2007年10月2日の13:45.30.123456789」という値をLocalDateTimeに格納できます。

このクラスでは、タイムゾーンを格納したり表現したりしません。 むしろこれは、壁掛け時計に見られるようなローカル時間と組み合された、誕生日に使用されるような日付に関する記述です。 オフセットやタイムゾーンなどの追加情報がなければ、時系列上にインスタントを表現することはできません。

ISO-8601暦体系は、世界中の大部分で現在使われている近代の常用暦体系です。 これは、現在のうるう年のルールがすべての時間に適用される、先発グレゴリオ暦体系と同等です。 今日作成されているほとんどのアプリケーションには、ISO-8601のルールが完全に適しています。 ただし、歴史的な日付を使用し、それらが正確であることを必要とするアプリケーションには、ISO-8601の方法が適さないことがわかります。

これはvalue-basedクラスです。プログラマは、equalのインスタンスを交換可能として扱い、同期にインスタンスを使用しないようにする必要があります。そうしないと、予期しない動作が発生する可能性があります。 たとえば、将来のリリースでは、同期が失敗する可能性があります。 比較する場合は、equalsメソッドを使用することをお薦めします。

実装要件:
このクラスは不変でスレッドセーフです。
導入されたバージョン:
1.8
関連項目: