try는 실패 범위, catch는 복구 범위를 표시한다

예외 문법의 목적은 위험한 코드와 복구 코드를 한눈에 분리하는 것이다.

try실패 가능성이 있는 최소 코드 범위
throw정상 흐름을 중단하는 실패 신호
catch(type)타입이 맞을 때만 실행되는 복구 경계
after복구 후 이어지는 정상 흐름
문법의미주의
try { }감시할 코드만 감싼다너무 넓게 잡으면 원인이 흐려진다
throw e예외 객체를 만들고 흐름을 옮긴다아래 문장은 실행되지 않는다
catch (T)던져진 타입과 호환될 때 처리한다구체 타입을 먼저 둔다
catch (...)마지막 방어선이다원인을 잃기 쉬워 남용하지 않는다

핵심: try-catch는 “어디가 위험한가”와 “어디서 복구하는가”를 코드 구조로 보여준다.