作成する際には、このクラスが保持できる各フィールドの値を明示的に指定することもできます。代わりとなるクラスです。日のうちのある時刻をカプセル化するこのクラスは、位置は重要でなく、時刻だけを保管したい場合に役立ちます。ジョブが開始される時刻など)。その場合には、時刻さえわかっていればよいことになります。このクラスが保持できる各フィールドの値を明示的に指定して作成することができます。特定のインスタントやパーシャル・タイム・スニペットについて知っておくことが有益である一方、期間を表現できると役立つ場合もよくあります。つのクラスが用意されています。どのクラスを使用するかは、表現したい期間のタイプによって決まります。このクラスは期間をミリ秒単位で数学的に表現します。よって秒、分、時などの標準単位での表現に変換するために使用することができます。インスタンスを使用して期間を表現するのは、その特定の期間がいつから始まるかは重要でない場合、あるいは期間をミリ秒で処理すると都合がよい場合に限られます。同じですが、その表現は、例えば年、月、週などといった「人間」にとっての観点からです。よってカプセル化された期間を表す個々のフィールドを取得できるということが重要な場合です。このクラスは、明確なインスタントによって範囲が決められた特定の期間を表現します。よってカプセル化された期間には、期間の開始は含まれますが、終了は除外されることを意味します。使用するのは、時系列における特定の時点で始まり、特定の時点で終了する期間を表現しなければならない場合です。クラスを作成する方法を学んだところで、今度はこれらのクラスを使って日付を計算する方法を説明します。一緒に使用するのがいかに容易であるかを説明します。使って日付/時刻の計算を行うとなると、かなり厄介なことになります。これから、いくつかの単純な例を紹介します。現在のシステム日付を前提として、前の月の最後の日を計算したいとします。オブジェクトの属性です。プロパティーは、プロパティーが表現するお馴染みの構成体にちなんで名付けられており、計算を行う目的でその構成体にアクセスするために使用されます。計算能力の鍵となります。つのクラスはすべて、このようなプロパティーを持っています。以下に、その例をいくつか挙げます。ヶ月を引いて「前の月」を取得します。プロパティーにその最大値を要求することによって、その月の最後の日を取得します。サブクラスは不変であることを思い出してください)、この連鎖での最後のメソッド呼び出しの結果を取得するだけで、計算全体の結果を得られることです。これと同じ方法で使用しています)。コードで結果に辿り着く方法を理解するには、リスト内のコメントを参考にしてください。日を足すと必ず最初の月曜日が返されるように「切り捨て」が行われます。日を足せば、最初の火曜日を取得できるというわけです。このタイプの計算を簡単に行えるようにしています。使用すると極めて簡単に行える他の計算例をいくつか紹介します。日後を計算するには、以下の方法を使います。日を足すだけでも計算できますが、それでは面白味がありません。秒後を計算する方法は以下のとおりです。2月最後の日を計算します。monthこの他にもまだまだ例を挙げられますが、要点はつかんでもらえたことでしょう。使用すればどんな日付の計算でも楽にこなせることをご自分で確かめてください。クラスを使用しているものがかなりあります。クラスに変換することができます。両方の長所を生かせるというわけです。作成することができます。作成することが可能です。クラスに移行するのはいかに単純であるかを示します。オブジェクトに変換する必要があります。0時に設定されます)。結合されているとしても、インターフェースをまるごと置き換える必要はありません。使用するといったことも可能です。使用するのは、着実な方法ではあるものの、私は常々この方法をもっと単純にできないものかと思っていました。書式設定の方法を指示します。クラスを用意しています)。回呼び出すだけでよいのです。以下に例をいくつか紹介します。静的メソッドを使用した例です。呼び出しは、それぞれ以下のような書式の出力を生成します。