हां, हम जावा में एक से अधिक कैच ब्लॉक वाले एक ट्राई ब्लॉक को परिभाषित कर सकते हैं।
- हर प्रयास कम से कम एक कैच ब्लॉक से जुड़ा होना चाहिए और होना चाहिए।
- जब भी एक कोशिश ब्लॉक में एक अपवाद वस्तु की पहचान की जाती है और यदि कई कैच ब्लॉक हैं तो कैच ब्लॉक को उस क्रम के आधार पर प्राथमिकता दी जाएगी जिसमें कैच ब्लॉक को परिभाषित किया गया है।
- सर्वोच्च प्राथमिकता हमेशा पहले कैच ब्लॉक को दी जाएगी। यदि पहला कैच ब्लॉक पहचाने गए अपवाद ऑब्जेक्ट को हैंडल नहीं कर सकता है तो यह तत्काल अगले कैच ब्लॉक पर विचार करता है।
उदाहरण
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