예상 가능한 실패를 구체적인 예외별로 처리합니다.
try 블록에는 실패할 수 있는 최소 코드만 두고 catch에서 처리 가능한 예외를 구체적으로 잡습니다. finally는 성공과 실패 모두에서 정리 작업을 수행합니다.
예제에서 try { } catch (SpecificException e) { } finally { } 부분부터 찾으세요. 선언 타입, 실제 객체와 반환값을 한 줄씩 따라가면서 컴파일 단계에서 잡히는 문제와 실행 중 생기는 문제를 구분하세요.
checked exception은 호출자가 처리나 전파를 선언해야 하고 RuntimeException 계열은 주로 프로그래밍 계약 위반을 나타냅니다.
사용자 메시지와 내부 로그를 분리하고 원래 stack trace와 문맥을 보존합니다.
현재 코드를 먼저 실행해 출력과 타입 흐름을 확인한 뒤 0으로 나누는 경우를 별도 처리하세요.
catch(Exception)으로 모든 오류를 조용히 무시하면 실제 버그와 중단 원인을 숨깁니다.
직접 바꿔보세요0으로 나누는 경우를 별도 처리하세요.
실행 버튼을 누르면 결과가 여기에 표시됩니다.