반응형

예외처리란 ?

프로그램이 실행되는 동안 문제가 발생하면 프로그램이 자동으로 중단된다. 이때 프로그램이 대처할 수 있게 처리하는 것을 예외 처리라고 한다.

 

- 프로그램 실행 중 발생하는 오류 : 예외(Exception)

- 프로그래밍 언어의 문법적인 오류로 인해 프로그램이 실행되기 전에 발생하는 오류 : 에러(error)

 

try catch finally

 

try {

} catch() {

} finally {

}

 

try 구문 안에서 예외가 발생하면 이를 catch 구문에서 처리한다. finally 구문은 필수 사항은 아니며, 예외 발생 여부와 상관없이 수행해야 하는 작업이 있을 때 사용한다.

 

:: try catch 예제

willExcept 자체가 존재하지 않는데, willExcept의 byeBye() 메서드를 사용한다. willExcept 객체도 없고 byeBye() 메서드도 존재하지 않는다. ( 예외처리를 알아보기 위한 강제 예외 )

 

<script>
    try {
        willExcept.byeBye();
    } catch(exception) {

    }

</script>

 

try 구문 안에서 예외가 발생하면 더 이상 try 구문을 진행하지 않고 catch 구문을 실행시킨다.

 

:: catch구문

아래 코드는 willExcept.byeBye()를 실행하려는 순간에 예외가 발생해 catch 구문을 실행한다.

그러므로 alert('try 구문 종료'); 는 실행되지 않고 '예외처리'만 실행된다.

 

<script>
    try {
        willExcept.byeBye();
        alert('try 구문 종료');
    } catch(exception) {
    	alert('예외처리');
    }
</script>

 

:: finally구문

 

<script>
    try {
        willExcept.byeBye();
    } catch(exception) {
    	alert('예외처리');
    } finally {
    	alert('무조건 발생');
    }
</script>

 

try에서 예외가 발생하고, catch 구문이 실행된다. try에서 예외가 발생을 하거나 말거나 상관없이 finally 구문은 실행된다.

그러므로 '예외처리', '무조건 발생' 두가지 다 실행된다.

반응형

+ Recent posts