예, Java에서 여러 catch 블록으로 하나의 try 블록을 정의할 수 있습니다.
- 모든 시도는 적어도 하나의 catch 블록과 연결되어야 하고 연결되어야 합니다.
- 예외 개체가 try 블록에서 식별될 때마다 그리고 여러 catch 블록이 있는 경우 catch 블록이 정의된 순서에 따라 catch 블록의 우선 순위가 지정됩니다.
- 가장 높은 우선순위는 항상 첫 번째 catch 블록에 부여됩니다. 첫 번째 catch 블록이 식별된 예외 개체를 처리할 수 없으면 바로 다음 catch 블록을 고려합니다.
예시
class TryWithMultipleCatch { public static void main(String args[]) { try{ int a[]=new int[5]; a[3]=10/0; System.out.println("First print statement in try block"); } catch(ArithmeticException e) { System.out.println("Warning: ArithmeticException"); } catch(ArrayIndexOutOfBoundsException e) { System.out.println("Warning: ArrayIndexOutOfBoundsException"); } catch(Exception e) { System.out.println("Warning: Some Other exception"); } System.out.println("Out of try-catch block"); } }
출력
Warning: ArithmeticException Out of try-catch block