JDK 7부터 자동 리소스 관리, 다중 캐치, 보다 정확한 rethrow라는 세 가지 새로운 기능으로 예외 처리가 확장되었습니다.
멀티 캐치를 사용하면 동일한 catch 절로 여러 예외를 포착하여 코드 중복을 피할 수 있습니다.
멀티캐치를 사용하려면 |로 구분된 예외 목록을 지정하세요. catch 절에서. 각 매개변수는 암시적으로 최종 매개변수입니다.
사용 예: catch(final ArithmeticException | ArrayIndexOutOfBoundsException e)는 동일한 catch 절로 두 예외를 모두 포착합니다.
프로그램은 0으로 나누려고 할 때 ArithmeticException을 생성하고 배열 범위 외부의 인덱스에 액세스할 때 ArrayIndexOutOfBoundsException을 생성합니다. 두 예외 모두 동일한 catch 절에 의해 포착됩니다.
보다 정확한 다시 발생 기능은 다시 발생시킬 수 있는 예외 유형을 다음과 같이 제한합니다.
1 try 블록에서 발생한 확인된 예외
2개의 예외는 이전 catch 절에서 처리되지 않습니다.
매개변수의 하위 유형 또는 상위 유형인 예외 3개.
최종 rethrow를 사용하려면 catch 블록의 매개변수가 final이어야 합니다. 즉, catch 블록 내에서 새 값을 부여할 수 없습니다. 명시적으로 명시할 수 있지만 필수는 아닙니다.
위 내용은 새로 추가된 세 가지 예외 기능의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!