2012-07-24 6 views
0

예외를 다른 클래스/메소드에 전파하고 싶을 때와 동일한 클래스/메소드에서 예외를 catch하는 경우는 언제입니까?자바 전파 예외

+0

현재 상황에서이 예외를 처리하는 방법을 모르는 경우 대답이 명확합니다. –

+0

나는 이해한다고 생각한다. 예외를 처리해야하는 경우에만 처리하십시오. 가능한 경우 버리십시오. 나는 이것이 오류 지점이나 그와 비슷한 지점까지 스택을 통해 되돌아 오는 이유라고 가정하고 있습니다. –

답변

2

처리해야 할 예외가 있습니다.

일반적으로 예외를 발생시켜야하지만, (예상되는) 오류로 인해 서브 루틴이 충돌하지 않도록하려면 예외를 처리하는 것보다 일반적으로 오류 로깅이 필요합니다 및/또는 에러 메시지를 사용자에게 디스플레이하는 단계를 포함한다.

0

좋은 습관은 "일찍 내리고 늦게 붙잡는다"입니다. 따라서 예외의 원인을 더 잘 이해할 수 있습니다.

0

실제 코드에서 발생하는 예외의 대다수는 의미에서 복구 할 수 없습니다 의미있는 코드가 있음 작업을 다시 시도하거나 다르게 시도합니다. 유일한 복구가 발생하면 순서대로 현재 작업 단위 (UOW)를 중단하고 — 예외를 로깅하고 모든 자원 및 기타 자원을 릴리스합니다.

는 첫 번째 규칙으로, 당신은 항상 작업 당신의 단위를 구분한다이 잘 정의 된 예외 장벽쪽으로 예외을 전파하기를 원 할거야 것을 의미한다.

코드가이 코드와 다른 것을 요구하면 코드가 충분히 명확해질 것이므로 일반적으로 코드를 생각할 필요가 없습니다.