Exception Handling   예외 처리

(2019-08-01)

예외

1. 예외 (Exception) 이란?

  ㅇ 특정 상황을 짐작케 하는 오류와는 달리, 예상치 못한 상황에 발생하는 것
     - 정상적인 처리 상태에서 벗어난 비정상 상태
        . 例) 잘 동작하던 서비스가 갑자기 정지하거나, 디스크 부족 현상이 나타나거나,
              미리 정해지지 않는 시간에 발생되는 인터럽트 등
     - 하드웨어 및 소프트웨어 상황 모두 포함

  ㅇ 예외 역할
     - 프로그램 수행 정지와 같은 상황을 알려주고 이를 방지
     - 예외는, 특정 상황 마다 발생하는 오류 메세지와는 달리,
        . 때론, 수행 중단과 함께 노골적인 예외 상황 메세지를 출력하기도 함


2. 예외 처리 (Exception Handling)

  ㅇ 예외 처리 (Exception Handling)
     - 시스템신뢰도를 향상시키기 위해, 프로그래밍 언어에서 프로그램의
       실행 도중 발생하는 예외상황을 발생,처리할 수 있는 능력/기능을 말함
        . 예외처리 능력 없는 언어 例) 과거 FORTRAN, PASCAL 등
        . 예외처리 능력 있는 언어 例) 미국방성의 Ada, C++, Java 등
           . Java 경우, 에러가 생겼을 때, 항상 예외를 발생시켜, 예외 처리로 모든 상황 대처 가능
           . PHP 경우, 예외 이외에 추가적으로 더 복잡한 형태의 에러 처리를 하기도 함

  ㅇ 예외 처리기 (Exception Handler)
     - 예외가 탐지되었을 때 실행되는 일종의 서브프로그램문법 例) 
     - 예외 탐지 및 처리 
        . try { 예외 발생 블록 구문 } catch (예외 타입) { 예외 처리 } finally { ... }
           .. try 블록 내 예외 발생시, 즉각 catch 구문을 실행
           .. 따라서, try 블록 내 예외 발생 지점 이후 코드는 실행하지 않게됨
           .. finally 블록은, 예외 처리 여부에 상관없이 항상 실행됨
     - 명시적/의도적으로 예외를 발생시키려면, throw 구문을 사용


[예외,이벤트 처리] 1. 예외 처리 2. 트랩 3. 인터럽트 4. 이벤트

 
        최근수정     요약목록     참고문헌