2016-06-12 2 views
0

Java는 메소드에서 확인 된 예외를 throw하면이를 선언하거나 try/catch 블록으로 둘러싸 야한다고 말합니다. try/catch 블록으로 선언 또는 둘러싸는 이유를 이해할 수 없습니다. 예외를 선언함으로써 예외를 처리 할 수 ​​없지만 try/catch 블록으로 처리 할 수 ​​있기 때문에 처리 할 수 ​​있습니다. 위와 같은 경우 다른 사람의 대안으로 간주됩니다.Java에서 try/catch 블록을 사용하여 예외를 선언하거나 둘러 쌈

+0

[방법으로 throw 된 예외 지정] – Arc676

+2

코드가 컴파일되는 경우에만 코드가 컴파일 될 수있는 대안입니다. 예를 들어, 둘 중 하나를해라. 그렇다고해서 예외를 throw하는 것이 잡는 것과 같은 일은 아닙니다. 던지기를 원한다면 던지기가 필요합니다. 잡으려면 잡아야합니다. throws 절에서 지정하지 않고 catch하지 않으면 컴파일되지 않습니다. –

답변

0

두 옵션을 사용할 수 있습니다. 1. 예외 예외 발생 -> 이것은 예외 조건이 발생하면 호출자가 처리해야 함을 의미합니다. 2. 시도/catch -> 이것은 메서드 자체가이를 처리한다는 것을 의미합니다.

차이점은 미묘합니다. 예, 다음 번에 우리가 던진 예외를 잡아낼 때가 있습니다. 그러나 이러한 진술을 신중하게 고려하면 이것이 두 가지 접근법의 핵심 차이점입니다.

대규모 팀의 경우 종종 하위 팀에서 여러 가지 작업을 수행합니다. 내부 레이어는 예외를 throw하고 흐름의 추가 실행을 중지하도록 선택할 수 있습니다. 바깥 레이어는 그것을 잡아서 사용자가 Java 스택 추적을 보지 못하도록 적절한 예외 메시지 또는 우아한 예외 메시지를 표시합니다.

희망이 도움이됩니다.

관련 문제