Java

if-else vs try-catch: 언제 어떤 것을 사용해야 할까?

lala9663 2023. 9. 25. 12:39

코드를 짜다 예외처리를 할 때 어느 순간에는 if else 어떤 순간엔 try catch를 사용하고 있다는걸 발견하게 되었다.
순간 왜 이렇게 왔다갔다 하지 생각해보니 정확하게 쓰임세를 이해하지 못했다고 느껴 정리해봤다.

 

코드의 제어예외 처리로 

 

그럼 차이점을 살펴보자.

'if - else': 조건부 분기

if else 문은 어떤 변수나 상황에 대한 조건문을 태우기 위해 사용되는 문법이다.

if (조건) {
    // 조건이 참일 때 실행되는 코드
} else {
    // 조건이 거짓일 때 실행되는 코드
}

언제 사용하지?

  • 다양한 조건에 따라 다른 동작을 수행해야 할 때
  • 데이터 유효성 검사 또는 입력 값의 처리
  • 프로그램의 흐름을 제어하고 조건에 따라 다른 동작을 수행해야 할 때

'try - catch': 예외처리

try {
    // 예외가 발생할 수 있는 코드
} catch (예외 타입1 e1) {
    // 예외 타입1에 대한 처리
} catch (예외 타입2 e2) {
    // 예외 타입2에 대한 처리
} finally {
    // 항상 실행되어야 하는 코드 (선택 사항)
}

언제 사용할까?

  • 파일 또는 네트워크연결과 같은 리소스 관리
  • 데이터베이스 연산 또는 외부 서비스와의 상호 작용
  • 예외 상황을 처리하고 오류 메시지를 기록하거나 사용자에게 표시해야 할 때

try catch 블록은 예외(예외 조건)을 처리하고 예외가 발생할 때 특정 동작을 수행하는 데 사용된다.

 

try catch는 프로그램이 오류를 발생할 여지가 있는 구간에서 오류로 인해 프로그램이 중단되지 않게 함을 목적으로 사용되고 있다.