시스템이 작업을 하다가 예외가 발생했을때 그 예외를 적절히 처리한후 시스템이 멈추지않고 작업을 계속할수있게 만드는것
실행 시(runtime)발생할 수 있는 오류는 '에러(error)'와'예외(exception)'가 있다.
에러는 메모리 부족, 스택오버플로우(?)등과 같이 일단 한번 발생하면 프로그램이 더이상 정상적으로 진행되지 못할 정도로 심각한 상태를 뜻하고, 예외는 발생하더라도 수습할 경우, 이후 프로그램 진행에 영향이 없는 상태를 뜻한다.
에러(error) - 프로그램 코드에 의해서 수습될 수 없는 심각한 오류
예외(exception) - 프로그램 코드에 의해서 수습될 수 있는 다소 미약한 오류
예외처리(exception handling) : 프로그램 실행시 발생하는 예외의 대비할 코드를 작성하는것. 예외처리의 목적은 예외로 인한 프로그램 비정상 종료를 막는것이다.
------------------------------------------------------------------------
![]() |
---------------------------------------------------------------------------------
띄어쓰기가 않되었다. Exception계열 예외는 처리해야만 한다는 뜻이다
---------------------------------------------------------------------------------* throw 명령어로 던질 수 있는 인스턴스는 오로지 Throwable 만 가능!
/* Throwable 클래스
* - 예외 상황을 보고할 때 사용하는 클래스
* - 보통 예외 상황이 발생했을 때의 정보를 담고 있다.
* - throw 명령어로 해당 객체를 호출자에게 전달한다.
* - 두 타입의 자식 클래스가 있다.
*
* 1) Exception 자식 클래스
* - 애플리케이션에 작업 도중에 발생하는 오류를 표현
* - 이런 예외를 보고 받는 호출자는 반드시 오류 처리를 해야 한다.
* 만약 오류 처리를 하지 않으면, 컴파일 시 오류가 발생한다.
* - RuntimeException
* : Error와 마찬가지로 호출자에게 던졌을 때
* 오류를 잘 받는지 컴파일러가 검사하지 않는다.
*
* 2) Error 자식 클래스
* - JVM 시스템에서 발생하는 오류를 표현
* - 이런 예외를 보고 받는 호출자는 오류를 처리하지 않아도 컴파일 오류가
* 발생하지 않는다.
*


댓글 없음:
댓글 쓰기