예외처리란!?
: 예기치 못한 예외의 발생에 대비한 코드를 작성,
프로그램의 갑작스런 비정상 종료를 막고 정상적인 실행상태를 유지할수 있도록 하는것이다.
try-catch
try{
//예외가 발생할 가능성이 있는 문장들을 넣는다.
}catch(Exception e){
//Exception이 발생할 경우, 이를 처리하기 위한 문장을 적는다.
}catch(Exception1 e1){
//Exception1이 발생할 경우, 이를 처리하기 위한 문장을 적는다.
}
try-catch구문을 통해 정상작동 구분과 비정상작동 했을때 예외처리 하는 부분을 나누어 처리 가능하다.
try-catch의 작동원리
1. try블럭 내에서 예외가 발생할 경우
=>1. 발생한 예외와 일치하는 catch블럭이 있는지 확인
2.일치하는 catch블럭이 존재하면, 블럭내 문장들을 수행하고 try-catch구문을 빠져나가 다음 문장 계속 수행,
만일, 일치하는 구문이 없을 경우 예외는 처리되지 못한다.
2. try블럭 내에서 예외가 발생하지 않은 경우
=> 1. catch 블럭을 거치지 않고 전체 try-catch블럭을 빠져나가 수행을 계속한다.
---------------------
try-catch-finally
try{
//예외가 발생할 가능성이 있는 문장들을 넣는다.
}catch(Exception e){
//Exception이 발생할 경우, 이를 처리하기 위한 문장을 적는다.
}finally{
//예외와 상관없이 항상 수행되어야 하는 문장들을 넣는다.
//항상 맨 마지막 catch 다음에 위치해야 한다.
}