코드를 작성하다 보면 생각치도 못한 예외의 오류가 발생합니다.
이런 예외를 어떻게 처리하는지 봅시다.
예외처리는 try - catch - finally 로 구분되어 있습니다.
try 에는 수행할 코드를 적습니다.
예외 발생 가능성이 있는 블록의 코드가 들어있습니다.
예외가 발생하면 그 부분부터 try 마지막 부분까지는 실행되지 못 하고 catch 블럭으로 넘어갑니다.
try{
int result = num1 / num2;
System.out.println(result);
}
catch(예외 클래스 변수명) 을 적습니다.
try에서 발생한 예외와 catch 에 선언된 예외가 같아야 실행됩니다.
예외가 발생해도 ( ) 안에 선언되지 않으면 실행 안 될 수도 있습니다.
예외가 여러개면 여러개의 catch 블록 사용 가능합니다.
예외 클래스에 Exeception 이라고 두게 된다면 모든 오류를 처리하는 예외 클래스가 됩니다. (어떤 오류가 발생해도 하나의 캐치블록에서 처리 가능)
예외 클래스 변수명.toString()
예외의 정보를 알려주는 메소드입니다.
예외에 대한 정보를 받을 수 있습니다.
catch 의 장점
오류가 나도 강제종료되지 않을 수 있다
catch (Exception e){
System.out.println("Error : " + e.toString());
}
finally 는 예외 발생 여부에 상관없이 반드시 실행되는 블록입니다.
하지만 코드에서 꼭 실행해야하는 부분이 없다면 생략 가능합니다.
finally {
System.out.println("Thank you !!");
}
public class ExceptionExam {
public static void main(String[] args) {
int num1 = 10;
int num2 = 0;
try{
int result = num1 / num2;
System.out.println(result);
}catch (Exception e){
System.out.println("Error : " + e.toString());
}finally {
System.out.println("Thank you !!");
}
}
}

