자바의 Error는 프로그램의 실행을 이어가도록 조치할 수 없는 상황입니다.

Exception은 프로그램에서 조치가 가능한 경우입니다.

IOException과 같이 반드시 코드에서 처리를 해줘야하는 CheckedException 계열이 있고,

RuntimeException과 그 상속받은 예외들처럼 코드 상에서 반드시 처리를 하지 않아도 되는 UncheckedException 계열로 나눌 수 있습니다.




try catch finally 명령을 통해서 예외를 처리하거나, 메소드 시그너처에서 노출합니다. 그 메소드를 부르는 상위 메소드에서 처리하도록 강제하는 것입니다.




package net.okjsp.java;

public class ExceptionTest {

	public static void main(String[] args) {
		divide(30, 5);
		try {
			//divide(30, 0);
			divide2(3, 0);
		} catch (Exception e) {
			e.printStackTrace();
		} finally {
			System.out.println("반드시 실행되는 코드");
		}
	}

	private static void divide(int a, int b) {
		int c = a / b;
		System.out.println(c);
	}

	private static void divide2(int a, int b) throws Exception {
		if (b == 0) {
			throw new Exception("0으로 나눌 수 없습니다.");
		}
		int c = a / b;
		System.out.println(c);
	}

}


+ Recent posts