パッケージ org.opengion.fukurou.system

## クラス OgRuntimeException

- java.lang.Object
- - java.lang.Throwable
  - - java.lang.Exception
    - - java.lang.RuntimeException
      - - org.opengion.fukurou.system.OgRuntimeException

- すべての実装されたインタフェース:
    `Serializable`
  直系の既知のサブクラス:
    `HybsOverflowException`, `HybsSystemException`, `OgCharacterException`

      public class OgRuntimeException
      extends RuntimeException

  共通的に使用されるRuntimeExceptionクラスです。 RuntimeException を継承しているため、try{} catch() {} は不要です。 本システムでは、すべてこのエクセプションクラスを継承させたクラスを作成し、用途によって、 使い分けるようにします。つまり、他のどのような、Throwable が発生したとしても、一旦、 try{} catch() {} で受けて、このクラスのサブクラスを、再度 throw させます。 そして、必要であれば、try{} catch() {} を用いて捕まえて、それぞれの対応処理を行います。 このクラスには、元々の発生したエクセプション( Throwable )を引数にとり、 その printStackTrace()情報を、自分自身のトレース情報に含めます。 また、引数にオブジェクトを渡すことができますので、object.toString() で、オブジェクトの 状態を表示できるようにしておけば、手軽にデバッグに使うことが可能になります。 このRuntimeExceptionを使うと、ThrowUtil#ogStackTrace(String,Throwable) に準拠した StackTrace を作成します。これは、最初の３行＋org.opengionを含む行だけのエラーを出力 しますので、エラーログの容量を大幅に抑えることが可能です。
  関連項目:
    直列化された形式
  変更履歴:
    6.4.2.0 (2016/01/29) 新規作成, 7.0.5.0 (2019/09/09) 自分自身をsuperに入れる。
  機能分類
    エラー処理
  バージョン
    6.0
  作成者
    Kazuhiko Hasegawa
  導入されたバージョン:
    JDK8.0,

- - ### コンストラクタの概要

    コンストラクタ
    コンストラクタ | 説明
    --- | ---
    `OgRuntimeException()` | 詳細メッセージを指定しないで OgRuntimeException を構築します。
    `OgRuntimeException​(String msg)` | 指定された詳細メッセージを持つ OgRuntimeException を構築します。
    `OgRuntimeException​(String msg, Throwable th)` | 指定された詳細メッセージと、Throwableオブジェクトを持つ OgRuntimeException を構築します。
    `OgRuntimeException​(Throwable th)` | 指定されたThrowableオブジェクトを持つ OgRuntimeException を構築します。

  - ### メソッドの概要

    すべてのメソッド インスタンス・メソッド concreteメソッド
    修飾子とタイプ | メソッド | 説明
    --- | --- | ---
    `void` | `addMessage​(String msg)` | 指定された追加メッセージを、printStackTrace() 出力時に、合成します。
    `void` | `addMessage​(Throwable th)` | 発生元もメッセージも含めたメッセージ文字列を返します。
    `Throwable` | `getCause()` | このスロー可能オブジェクトの原因を返しますが、原因が存在しないか不明な場合はnullを返します。
    `String` | `getMessage()` | このスロー可能オブジェクトの詳細メッセージ文字列を返します。
    `StackTraceElement[]` | `getStackTrace()` | スタックトレース要素の配列を返します。
    `void` | `printStackTrace()` | このスロー可能オブジェクトおよびそのバックトレースを標準エラー・ストリームに出力します。
    `void` | `printStackTrace​(PrintStream ps)` | このスロー可能オブジェクトとそのバックトレースを指定された印刷ストリームに出力します。
    `void` | `printStackTrace​(PrintWriter pw)` | このスロー可能オブジェクトとそのバックトレースを指定されたプリント・ライターに出力します。

    - ### クラスから継承されたメソッド java.lang.Throwable

      `addSuppressed, fillInStackTrace, getLocalizedMessage, getSuppressed, initCause, setStackTrace, toString`

    - ### クラスから継承されたメソッド java.lang.Object

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

- - ### コンストラクタの詳細

    - #### OgRuntimeException

          public OgRuntimeException()

      詳細メッセージを指定しないで OgRuntimeException を構築します。
      関連項目:
        `RuntimeException()`
      変更履歴:
        6.4.2.0 (2016/01/29) 新規作成。, 7.0.5.0 (2019/09/09) 自分自身をsuperに入れる。

    - #### OgRuntimeException

          public OgRuntimeException​(String msg)

      指定された詳細メッセージを持つ OgRuntimeException を構築します。
      パラメータ:
        `msg` - 詳細メッセージ
      関連項目:
        `RuntimeException(String)`
      変更履歴:
        6.4.2.0 (2016/01/29) 新規作成。, 6.9.2.1 (2018/03/12) 引数のメッセージを、内部メッセージにセットしておきます。, 7.0.5.0 (2019/09/09) 自分自身をsuperに入れる。, 7.1.0.0 (2020/01/20) 内部メッセージに、原因のメッセージも含める。

    - #### OgRuntimeException

          public OgRuntimeException​(Throwable th)

      指定されたThrowableオブジェクトを持つ OgRuntimeException を構築します。
      パラメータ:
        `th` - 例外Throwableオブジェクト
      関連項目:
        `RuntimeException(Throwable)`
      変更履歴:
        6.4.2.0 (2016/01/29) 新規作成。, 7.0.5.0 (2019/09/09) 自分自身をsuperに入れる。, 7.1.0.0 (2020/01/20) 内部メッセージに、原因のメッセージも含める。

    - #### OgRuntimeException

          public OgRuntimeException​(String msg,
                                    Throwable th)

      指定された詳細メッセージと、Throwableオブジェクトを持つ OgRuntimeException を構築します。
      パラメータ:
        `msg` - 詳細メッセージ
        `th` - 例外Throwableオブジェクト
      関連項目:
        `RuntimeException(String,Throwable)`
      変更履歴:
        6.4.2.0 (2016/01/29) 新規作成。, 6.9.2.1 (2018/03/12) 引数のメッセージを、内部メッセージにセットしておきます。, 7.0.5.0 (2019/09/09) 自分自身をsuperに入れる。, 7.1.0.0 (2020/01/20) 内部メッセージに、原因のメッセージも含める。

  - ### メソッドの詳細

    - #### addMessage

          public final void addMessage​(Throwable th)

      発生元もメッセージも含めたメッセージ文字列を返します。
      パラメータ:
        `th` - 元のThrowableオブジェクト
      変更履歴:
        7.1.0.0 (2020/01/20) 内部メッセージに、原因のメッセージも含める。

    - #### addMessage

          public final void addMessage​(String msg)

      指定された追加メッセージを、printStackTrace() 出力時に、合成します。 主に、openGionバージョンや、その他追記したいメッセージを登録することで、 printStackTrace() 出力時に、合成できます。 複数のメッセージは登録できません。最後に登録したメッセージのみ使用されます。 なお、null のメッセージは登録できません。
      パラメータ:
        `msg` - 追加メッセージ
      変更履歴:
        6.4.2.0 (2016/01/29) 新規作成。, 7.0.5.0 (2019/09/09) 自分自身をsuperに入れる。, 7.1.0.0 (2020/01/20) 内部メッセージに、原因のメッセージも含める。

    - #### getMessage

          public String getMessage()

      このスロー可能オブジェクトの詳細メッセージ文字列を返します。 内部メッセージに、原因のメッセージも含めたメッセージです。
      オーバーライド:
        `getMessage` クラス内 `Throwable`
      戻り値:
        詳細メッセージ文字列
      変更履歴:
        7.1.0.0 (2020/01/20) 内部メッセージに、原因のメッセージも含める。
      このメソッドは、nullを返しません

    - #### printStackTrace

          public void printStackTrace()

      このスロー可能オブジェクトおよびそのバックトレースを標準エラー・ストリームに出力します。 ここのメソッドは、このThrowableオブジェクトのスタック・トレースを、System.errフィールドの 値であるエラー出力ストリームで出力します。出力の先頭行には、このオブジェクトに対する toString()メソッドの結果が含まれます。 残りの行は、以前にfillInStackTrace()メソッドによって記録されたデータを表します。 この情報の書式は実装によって異なりますが、典型的な書式の例を次に示します。
      オーバーライド:
        `printStackTrace` クラス内 `Throwable`
      関連項目:
        `Throwable.printStackTrace()`
      変更履歴:
        6.4.2.0 (2016/01/29) 新規作成。, 7.0.5.0 (2019/09/09) 自分自身をStackTraceに入れる。, 7.0.5.0 (2019/09/09) 自分自身をsuperに入れる。, 7.1.0.0 (2020/01/20) 内部メッセージに、原因のメッセージも含める。

    - #### printStackTrace

          public void printStackTrace​(PrintStream ps)

      このスロー可能オブジェクトとそのバックトレースを指定された印刷ストリームに出力します。
      オーバーライド:
        `printStackTrace` クラス内 `Throwable`
      パラメータ:
        `ps` - 出力する印刷ストリーム
      関連項目:
        `Throwable.printStackTrace(PrintStream)`
      変更履歴:
        6.4.2.0 (2016/01/29) 新規作成。, 7.0.5.0 (2019/09/09) 自分自身をsuperに入れる。, 7.1.0.0 (2020/01/20) 内部メッセージに、原因のメッセージも含める。

    - #### printStackTrace

          public void printStackTrace​(PrintWriter pw)

      このスロー可能オブジェクトとそのバックトレースを指定されたプリント・ライターに出力します。
      オーバーライド:
        `printStackTrace` クラス内 `Throwable`
      パラメータ:
        `pw` - 出力するプリント・ライター
      関連項目:
        `Throwable.printStackTrace(PrintWriter)`, `ThrowUtil.ogStackTrace(String,Throwable)`
      変更履歴:
        6.4.2.0 (2016/01/29) 新規作成。, 7.0.5.0 (2019/09/09) 自分自身をsuperに入れる。

    - #### getStackTrace

          public StackTraceElement[] getStackTrace()

      スタックトレース要素の配列を返します。
      オーバーライド:
        `getStackTrace` クラス内 `Throwable`
      戻り値:
        スタックトレース要素の配列
      関連項目:
        `Throwable.getStackTrace()`, `ThrowUtil.selectElement(Throwable,int)`
      変更履歴:
        6.4.2.0 (2016/01/29) 新規作成。, 6.9.3.0 (2018/03/26) 内部 Throwable が null の場合、長さゼロの StackTraceElementを返します。, 7.0.5.0 (2019/09/09) 廃止, 7.0.6.4 (2019/11/29) 復活

    - #### getCause

          public Throwable getCause()

      このスロー可能オブジェクトの原因を返しますが、原因が存在しないか不明な場合はnullを返します。
      オーバーライド:
        `getCause` クラス内 `Throwable`
      戻り値:
        このスロー可能オブジェクトの原因（常に null）
      変更履歴:
        7.0.6.4 (2019/11/29) 常に null を返すようにします。