피드로 돌아가기
Dev.toBackend
원문 읽기
Java 예외 처리 키워드 5가지(try, catch, finally, throw, throws)의 역할과 활용법을 정리함
Exception Handling Keywords in Java
AI 요약
Context
Java 프로그램 실행 중 예외가 발생하면 프로그램이 중단될 수 있음. 예외를 체계적으로 처리하지 않으면 시스템 안정성이 저하됨.
Technical Solution
- try 블록: 예외 발생 가능성 있는 코드를 감싸서 해당 코드 영역을 명시함
- catch 블록: try에서 발생한 ArithmeticException, IOException 등 구체적인 예외 타입을 처리함
- finally 블록: 예외 발생 여부와 관계없이 항상 실행되어 resource 정리 코드를 배치함
- throw 키워드: 조건 분기를 통해 custom validation이나 business rule 위배 시 예외를 수동으로 던짐
- throws 키워드: 메서드 시그니처에 예외를 선언하여 호출자에게 예외 처리 책임을 위임함
Impact
try-catch-finally 구조를 적용하면 프로그램 비정상 종료를 방지하고 user-friendly 에러 메시지를 제공함.
Key Takeaway
예외 처리는 발생 지점(throw), 감지 지점(catch), 정리 지점(finally)을 명확히 분리하여 작성해야 함. throws는 예외 책임을 호출자에게 전달하는 선언 수단임.
실천 포인트
DB 연결, file handling, network call과 같은 resource 관리 코드에서는 반드시 finally 블록에서 connection.close(), file.close() 등을 호출하여 resource leak을 방지할 것. checked exception 처리 시 throws 키워드로 메서드 시그니처에 선언하고, caller에게 처리 책임을 위임하는 설계를 적용할 것.