사진 출처 : https://namu.wiki/
프로그램 실행 중 예기치 못한 오류 발생을 예외라 한다. 예외 상황을 예측하고 처리할 수 있는 기능이 예외처리라고 한다.
이 코드를 실행하면 10을 0으로 나누기에 예외가 발생하게 된다. 예외 때문에 코드가 전부 실행 되는 것이 아닌 중간에 끊기게 된다.
package Exception;
public class ExceptionExam {
public static void main(String[] args) {
int i = 10;
int j = 0;
try {
int k = i / j; // Exception 발생 !
System.out.println(k);
} catch (ArithmeticException e) {
System.out.println("0으로 나눌 수 없음");
} finally {
System.out.println("오류가 발생하든 아니든 무조건 실행");
}
System.out.println("main end");
}
}
오류가 발생할 것 같은 부분은 이 곳에 입력한다.
try문에 오류 발생 시, 발생할 오류와 관련된 해당 함수로 catch 블록에서 처리한다.
오류가 실행되든 안되든 무조건 실행되는 곳이다. 생략이 가능한 부분
여기서 ArithmeticException 는 산술, 캐스팅 또는 변환 작업에서 오류가 발생한 경우 throw되는 예외라고 한다.
위 코드와 같이 try - catch - finally 문을 입력하면
중간에 코드가 끊기지 않고 잘 출력되는 모습을 볼 수 있다.