例外の処理、try-catch文フロー
>try-catch文
try {
// 예외가 발생할 가능성이 있는 문장 넣기
} catch (Exception1 e1) {
// Exception1이 발생했을 경우, 이를 처리하기 위한 문장
} catch (Exception2 e2) {
// Exception2이 발생했을 경우, 이를 처리하기 위한 문장
}
>printStackTrace()とgetMessage()
例外が発生した場合、printStackTrace()とgetMessage()を含む例外オブジェクトが作成されます.
>マルチcatchブロック
try {
...
} catch (ExceptionA | ExceptionB e) {
e.printStackTrace();
}
これにより、printStackTrace()の内容が同じになると、重複を解消することができる.このときの参照変数eは、ExceptionAとExceptionBの共通メンバーのみで使用できます.それぞれ独自の方法は参照できません.
注意しなければならないのは、
ExceptionAとExceptionBが親子関係の場合は許されません.
この場合、親Exception Aのみを使用しても親子に適用されます.
>例外の原因
Exception e = new Exception("예외를 발생시켜보자!");
throw e;
throw new Exception("예외를 발생시켜보자!");
このように書くこともできます>checked異常、unchecked異常
checked異常は、Exceptionクラスとそのサブクラスを表します.
unchecked例外はRuntimeExceptionクラスとそのサブクラスです.
したがって、throw new Exception();try-catchがない場合、コンパイルエラーが発生します.throw new runtimeException()try-catchがなくてもコンパイルエラーは発生しません.ただし、実行中にエラーが発生します.
Reference
この問題について(例外の処理、try-catch文フロー), 我々は、より多くの情報をここで見つけました https://velog.io/@rladuswl/자바의-정석-예외-처리하기-try-catch-문의-흐름テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol