public class hiException extends RuntimeException
IOExceptionなどの無用なチェックが強要されるExceptionをRuntimeExceptionでラップすることにより、チェックの必要を無くします。
void foo(){ // throws Exceptionがない
try{
doSomething();// IOExceptionなどを投げる可能性がある。
}
catch(Exception _ex){
throw hiU.rap(_ex); // _exがRuntimeExceptionの場合はそのまま
// そうでない場合はhiExceptionでラップ
}
}
void boo(){
try{
foo();
}
catch(Excepton _ex){
_ex.printStackTrace(_ex);// 例えばIOExceptionをラップしたhiExceptionの場合
// IOException部のスタックトレースが出る
}
}
ラムダ呼び出しの例外ラッピング関数(hiU.rap(otsu.hiNote.hiU.RunnableEx))が投げるのもhiExceptionです。
hiU.rap(()->doSomething()); // ラムダ式が何等かのExceptionを投げた場合、hiExceptionでラップする
//
list.forEach((_s_)->hiU.rapException(()->doSomething(_s_)));// 例えばRuntimeException以外許さないStream
// でも用いることができる。
| コンストラクタと説明 |
|---|
hiException(Exception exp_)
原因例外を持つラッパー.
|
hiException(String msg_)
単純なRuntimeException,
|
hiException(String msg_,
Exception exp_)
メッセージを付加したラッパーを得る.
|
| 修飾子とタイプ | メソッドと説明 |
|---|---|
String |
getMessage()
例外に付されたメッセージを得る.
|
String |
getMessageNative()
例外に付されたメッセージを得る.
|
StackTraceElement[] |
getStackTrace()
スタック情報を得る.
|
StackTraceElement[] |
getStackTraceNative()
スタック情報を得る.
|
void |
printStackTrace(PrintStream ps_)
例外発生時のスタック階層を表示する
この例外の原因となる例外のスタック階層を表示します。
|
void |
printStackTrace(PrintWriter pw_)
例外発生時のスタック階層を表示する.
|
void |
printStackTraceNative(PrintStream ps_)
RuntimeExceptionのprintStackTrace
本例外の階層も表示し、原因例外はCauseとして表示されます。
|
void |
printStackTraceNative(PrintWriter pw_)
RuntimeExceptionのprintStackTrace
本例外の階層も表示し、原因例外はCauseとして表示されます。
|
static RuntimeException |
rap(Exception exp_)
ExceptionをRuntimeExceptionにラップする.
|
String |
toString()
例外情報を表示する.
|
String |
toStringNative()
例外情報を表示する.
|
addSuppressed, fillInStackTrace, getCause, getLocalizedMessage, getSuppressed, initCause, printStackTrace, setStackTracepublic hiException(Exception exp_)
exp_ - 原因となった例外public hiException(String msg_)
msg_ - メッセージpublic static final RuntimeException rap(Exception exp_)
引数のExceptionがRuntimeException以外の場合、本クラスのcauseに入れる形でラップします。
引数がRuntimeExceotionの場合はそのまま返します。
hiU.rap(Exception)と同じです。
exp_ - RuntimeExceptionにしたいExceptionpublic String getMessage()
この例外にメッセージが設定されてない場合原因となる例外のメッセージを得ます。
hiException(String,Exception)によりメッセージが付加されていると付加されたメッセージがえられます。
getMessage クラス内 Throwablepublic StackTraceElement[] getStackTrace()
この例外の原因となる例外のスタック情報を得ます。本例外の階層は省略されます。
getStackTrace クラス内 Throwablepublic String toString()
この例外にメッセージが設定されてない場合、原因となる例外の文字列表記を得ます。
hiException(String,Exception)によりメッセージが付加されていると本例外の情報を表示します。
public void printStackTrace(PrintStream ps_)
この例外の原因となる例外のスタック階層を表示します。本例外の階層は省略されます。
printStackTrace クラス内 Throwableps_ - 出力先public void printStackTrace(PrintWriter pw_)
この例外の原因となる例外のスタック階層を表示します。本例外の階層は省略されます。
printStackTrace クラス内 Throwablepw_ - 出力先public String getMessageNative()
本例外に付加されたメッセージを得ます。
public StackTraceElement[] getStackTraceNative()
本例外の階層スタック情報を得ます。原因例外のスタック情報はgetCause().getStackTrace()で得られます。
public String toStringNative()
本例外の階層も表示し、原因例外はCauseとして扱われます。
public void printStackTraceNative(PrintStream ps_)
本例外の階層も表示し、原因例外はCauseとして表示されます。
ps_ - 出力先public void printStackTraceNative(PrintWriter pw_)
本例外の階層も表示し、原因例外はCauseとして表示されます。
pw_ - 出力先