ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 예외(Exception)
    Programing/C# 2008. 8. 5. 14:04
    예외(Exception)란 프로그램 실행도중 발생하는 오류를 말한다.
    에러는 그 발생 상황에 따라 크게 2가지로 나눌수 있는데 비교적 쉽게 에러를 찾을수 있는 오타나 문법적인 에러의 컴파일타임 에러와 디버깅 절차를 거치지 않으면 거의 잡기 힘든 상황의 런타임에러로 구분할 수 있다. 예외란 일반적으로 런타임 상황에 나타나는 오류를 의미한다.

    try ~ catch 문

    일반적으로 런타임 예외처리는 try ~ catch를 사용한다.
    try문에서 예외가 발생할 가능성이 있는 코드의 영역을 지정해 주고, catch문에서는 발생한 예외나 throw 명령으로 전달된 예외를 처리하게 된다.
    즉 try는 예외 감시가 이며, catch는 예외처리기 역할을 하게 된다.

    경우에 따라서는 여러개의 에러발생을 처리하기 위해 다중 catch문을 사용해야 할때가 있는데 이때 주의해야 할 점은 각각의 catch문은 반드시 서로 다른 종류의 예외를 처리해야하며, 사용될 예외 객체는 하위 예외타입을 상위 예외타입보다 먼저 사용해야 하는 것이다.

    또 만약 예외가 일어나더라도 실행이 멈추거나 하는 일이 생기면 안되는 작업물일 경우엔 예외의 발생 여부에 관계없이 반드시 최종적으로 한번은 수행하도록 하여 프로그램의 뒷마무리 작업을 하게 해야 하는 상황이 있는데 그 역활을 해주는 것이 바로 finally문 이다.


    try{
         
    // 예외를 발생시킬 가능성이 있는 코드
    }catch
    (예외타입1 변수명){
         
    //예외1이 발생했을 때 실행되는 코드
    }catch
    (예외타입2 변수명){
         
    //예외2가 발생했을 때 실행되는 코드
    }finally
    {
         
    // 필수 실행 코드
    }



    예를 들어 데이터베이스를 관리하는 코드에서는 예외가 발생하든말든 마지막에 연결을 닫아주어야 하는데 그런곳에 finally를 사용하면 된다.


Designed by Tistory.