예, 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