[java] 자바의 예외처리(Exception Handling). try ~ catch 와 throws 의 간단한 이해.

예외(Exception)
– 프로그램 실행중에 발생되는 의도하지 않은 문제
– 예외가 발생하면 프로그램은 비정상 종료된다.

 

예외처리(Exception Handling)
– 발생된 예외 때문에 프로그램이 비정상 종료되는 것을 방지하고 정상 종료 되도록 처리하는것

예외처리 첫번째 방법 try ~ catch
– 예외처리 매커니즘
1. 프로그램 실행
2. try 내에서 예외발생
3. JVM은 예외를 처리할 수 있는 예외 클래스를 찾이서 해당 클래스의 객체를 생성한다.
4. 생성된 객체의 참조값은 catch 블록의 변수에 저장된다.(생성된 객체와 catch블록에 명시된 클래스가 다르면 예외처리 실패. 적절한 예외클래스를 지정해야함)
5. 예외처리 코드실행
6. 프로그램 정상종료

finally
– finally 블록은 프로그램 진행이 try 블록으로 넘어오면 예외발생 여부와 관계없이 실행된다.

 

예외처리 두번째 방법 throws 를 이용한 예외처리
– 호출한 곳으로 예외처리를 넘기는 방법
– 생성된 예외클래스 대신에 다른 예외클래스를 이용해서 예외를 처리할때 사용.
주로 사용자 정의 예외클래스로 예외를 처리하는 경우

 

명시적으로 특정 예외 클래스를 정의 하여 예외처리(사용자 정의 예외클래스 사용X)