RunTimeException은 생략이 가능하다!
|예외복구 | 예외회피 |임의발생 | 사용자정의| |—–|—–|——|——| |try-catch|throws|throw|ExtendsException| |직접처리|간접처리|테스트용|거의 사용X| |예외처리 순서 중요|예외처리 순서X|||
try{
실행가능한 평상시 코드
}
catch(예상되는 에러){}
finally{에러가 발생하든, 발생하지 않든 무조건 수행되는 문장 => 생략가능}
1) 전체 예외처리
try
{
for(int i=0;i<10;i++)
{
i==3 error => i=0,1,2
}
}catch(Exception e){}
2) 부분적 예외처리
for(int i=0;i<10;i++)
{
try
{
i==3 error => i=0,1,2 ==> i=4,5...
}catch(Exception e){} ==> i++로 이동
}
try{
실행가능한 평상시 코드
}
catch(예상되는 에러1){에러처리}
catch(예상되는 에러2){에러처리}
catch(예상되는 에러3){에러처리}
finally{에러가 발생하든, 발생하지 않든 무조건 수행되는 문장 => 생략가능}
간접적으로 예외를 처리하는 방식
public void display() throws Exception, ArrayIndexOfBoundsException,NumberFormatException
{
}
public class MainClass {
public int div(int a,int b) throws ArithmeticException
{
return a/b;
}
public static void main(String[] args) { // RuntimeException 관련 부분은 생략 가능
MainClass m = new MainClass();
int res = m.div(10, 2);
System.out.println(res);
}
}