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

クラスJapaneseEra

java.lang.Object
java.time.chrono.JapaneseEra
すべての実装されたインタフェース:
Serializable, Era, TemporalAccessor, TemporalAdjuster

public final class JapaneseEra extends Object implements Era, Serializable
和暦体系の紀元。

日本語政府は、各紀元の正式名称と開始日を定義します。 年代は連続し、日付範囲が重複しないため、ある年代の終了日は常に次の年代の開始日の前日になります。

Java SE Platformは、Meiji eraから始まる日本語政府によって定義されているすべての時代をサポートします。 各年代は、プラットフォームで整数値および名前によって識別されます。 of(int)およびvalueOf(String)メソッドを使用すると、年代ごとにJapaneseEraのシングルトン・インスタンスを取得できます。 values()メソッドは、サポートされているすべての消去のシングルトンのインスタンスを返します。

便宜上、このクラスは、values()メソッドによって返されるシングルトン・インスタンスを参照するパブリック静的最終フィールドの数を宣言します。

APIのノート:
このクラスで宣言されたフィールドは、時間の経過とともにvalues()メソッドの結果の行に展開されることがあります。 ただし、必ずしも1:1フィールドとシングルトン・インスタンスの間にこの関連があるとはかぎりません。日本語政府は、新しい時代をナウンして開始日を定義する場合がありますが、正式な名前は定義しない場合があります。 このシナリオでは、新しい紀元を表すシングルトン・インスタンスは、公式の名前が定義されるまで安定していない名前を返します。 開発者は、パブリック静的な最終フィールドに対応していないシングルトン・インスタンスから戻される名前に依存する場合に注意を払う必要があります。
実装要件:
このクラスは不変でスレッドセーフです。
導入されたバージョン:
1.8
関連項目:
  • フィールドのサマリー

    フィールド
    修飾子と型
    フィールド
    説明
    static final JapaneseEra
    値2を持つ「平成」時代(1989-01-08 - 2019-04-30)のシングルトン・インスタンス。
    static final JapaneseEra
    値-1を持つ「明治」時代(1868-01-01 - 1912-07-29)のシングルトン・インスタンス。
    static final JapaneseEra
    値3を持つ「令和」時代(2019-05-01 - )のシングルトン・インスタンス。
    static final JapaneseEra
    値1を持つ「昭和」時代(1926-12-25 - 1989-01-07)のシングルトン・インスタンス。
    static final JapaneseEra
    値0を持つ「大正」時代(1912-07-30 - 1926-12-24)のシングルトン・インスタンス。
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    この紀元のテキスト表現を取得します。
    int
    数値の紀元のint値を取得します。
    of(int japaneseEra)
    int値からJapaneseEraのインスタンスを取得します。
    指定されたフィールドの有効な値の範囲を取得します。
    valueOf(String japaneseEra)
    その名前を持つJapaneseEraを返します。
    static JapaneseEra[]
    JapaneseErasの配列を返します。

    クラスjava.lang.Objectで宣言されたメソッド

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    インタフェースjava.time.chrono.Eraで宣言されたメソッド

    adjustInto, get, getLong, isSupported, query
  • フィールド詳細

    • MEIJI

      public static final JapaneseEra MEIJI
      値-1を持つ「明治」時代(1868-01-01 - 1912-07-29)のシングルトン・インスタンス。
    • TAISHO

      public static final JapaneseEra TAISHO
      値0を持つ「大正」時代(1912-07-30 - 1926-12-24)のシングルトン・インスタンス。
    • SHOWA

      public static final JapaneseEra SHOWA
      値1を持つ「昭和」時代(1926-12-25 - 1989-01-07)のシングルトン・インスタンス。
    • HEISEI

      public static final JapaneseEra HEISEI
      値2を持つ「平成」時代(1989-01-08 - 2019-04-30)のシングルトン・インスタンス。
    • REIWA

      public static final JapaneseEra REIWA
      値3を持つ「令和」時代(2019-05-01 - )のシングルトン・インスタンス。 日本政府が定義しないかぎり、この紀元の終了日は指定されません。
      導入されたバージョン:
      13
  • メソッドの詳細

    • of

      public static JapaneseEra of(int japaneseEra)
      int値からJapaneseEraのインスタンスを取得します。
      • 1は、1970-01-01 (ISO暦体系)を含んでいるため、'昭和'時代に関連付けられています。
      • -10の値は、それぞれMeijiとTaishoの2つ前の年代に関連付けられています。
      • 1より大きい値は、Heisei (2)以降の紀元に関連付けられます。

      values()メソッドから返されるJapaneseEraのすべてのインスタンスにはint値があります(これは、このメソッドによって受け入れられるEra.getValue()経由で利用できます)。

      パラメータ:
      japaneseEra - 表す紀元
      戻り値:
      JapaneseEraシングルトン、null以外
      例外:
      DateTimeException - 値が無効な場合
    • valueOf

      public static JapaneseEra valueOf(String japaneseEra)
      その名前を持つJapaneseEraを返します。

      文字列は、紀元の名前と完全に一致している必要があります。 (不適切な空白文字は許可されません。)

      有効な年代名は、values()から返された年代の名前です。

      パラメータ:
      japaneseEra - japaneseEra名、null以外
      戻り値:
      JapaneseEraシングルトン、nullにはならない
      例外:
      IllegalArgumentException - 指定された名前を持つJapaneseEraがない場合
    • values

      public static JapaneseEra[] values()
      JapaneseErasの配列を返します。 この配列には、既知の年代シングルトン以外の日本語政府によって定義されている年代が含まれることがあります。

      このメソッドは、次のようにしてJapaneseEraに対して反復処理を行うために使用できます。

       for (JapaneseEra c : JapaneseEra.values())
           System.out.println(c);
       

      戻り値:
      JapaneseErasの配列
    • getDisplayName

      public String getDisplayName(TextStyle style, Locale locale)
      この紀元のテキスト表現を取得します。

      これは、紀元の識別に使用され、ユーザーへの表示に適したテキストの名前を返します。 パラメータは返されるテキストとロケールのスタイルを制御します。

      テキスト・マッピングが見つからない場合、数値が返されます。

      定義:
      インタフェースEra内のgetDisplayName
      パラメータ:
      style - 必要なテキストのスタイル、null以外
      locale - 使用するロケール。null以外
      戻り値:
      紀元のテキスト値、null以外
    • getValue

      public int getValue()
      数値の紀元のint値を取得します。

      1970-01-01 (ISO暦体系)を含むSHOWA紀元の値は1です。 以降の紀元は2 (HEISEI)から番号付けされます。 以前の紀元は 0 (TAISHO)、-1 (MEIJI)と番号付けされます。

      定義:
      インタフェースEragetValue
      戻り値:
      紀元値
    • range

      public ValueRange range(TemporalField field)
      指定されたフィールドの有効な値の範囲を取得します。

      範囲オブジェクトはフィールドの有効な最小値と最大値を表します。 この紀元は、返される範囲の精度を向上するために使われます。 範囲を返せない場合は、フィールドがサポートされていないか他のなんらかの理由で、例外がスローされます。

      フィールドがChronoFieldの場合、ここに問合せを実装します。 ERAフィールドは範囲を返します。 他のすべてのChronoFieldインスタンスはUnsupportedTemporalTypeExceptionをスローします。

      フィールドがChronoFieldではない場合、このメソッドの結果は、引数としてthisを渡してTemporalField.rangeRefinedBy(TemporalAccessor)を呼び出すことにより取得されます。 範囲を取得できるかどうかはフィールドによって決まります。

      有効な和暦の紀元の範囲は、和暦体系の性質のため、時間の経過とともに変更される可能性があります。

      定義:
      インタフェースErarange
      定義:
      インタフェースTemporalAccessorrange
      パラメータ:
      field - 範囲を問い合わせるフィールド、null以外
      戻り値:
      フィールドの有効値の範囲。null以外
      例外:
      DateTimeException - フィールドの範囲を取得できない場合
      UnsupportedTemporalTypeException - 単位がサポートされていない場合