例外処理
Javaで例外を処理する方法
Exception
が発生する可能性があると仮定する方法problemMethod()
try-catch
空のブロックとしてではなくcatchブロックに例外処理文を作成することが望ましい.
public void runMethod(){
try{
problemMethod();
}
catch(Exception e){
//예외 처리!
}
}
try-catch-finally
tryブロックにreturnがあっても動作します.
public void runMethod(){
try{
problemMethod();
return;
}
catch(Exception e){
//예외 처리!
}
finally{
System.out.println("finally");
}
}
//finally가 출력된다.
try - with - resources
リソースがcloseを必要とするオブジェクトである場合、例外が発生したときに自動的に返されます.
public void runMethod(){
try (BufferedReader br =
new BufferedReader(new FileReader(path))) {
return br.readLine();
}catch{
//예외 처리!
}
}
throw
public void runMethod(){
throw new RuntimeException("Runtime Exception!");
}
throws
public void runMethod() throws Exception{
problemMethod();
}
JAvaの異常階層
Throwable
クラスにはError
とException
クラスがある.ExceptionとError
Error
はシステムにおける問題であり、Exception
は実装された論理における問題である.コンパイル時に発生するエラーをコンパイルエラー、実行時に発生するエラーを実行エラーと呼びます.
実行時に発生したエラーのうち、論理内で発生したエラー(処理可能なエラー)を例外と呼び、システムレベルで発生したエラーではありません.
RuntimeExceptionとは?
RuntimeExceptionはUnchecked Exceptionです.RuntimeExceptionを除き、ExceptionはChecked Exceptionです.
Checked Exceptionでは、明示的に例外処理を行う必要があります.
カスタム例外の作成方法
Exceptionクラスを継承してカスタム例外を作成できます.
class MyException extends RuntimeException{
...
}
Reference
この問題について(例外処理), 我々は、より多くの情報をここで見つけました https://velog.io/@pond1029/exceptionテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol