Handling Multiple Exceptions java In Hindi

Handling Multiple Exceptions java In Hindi

जावा प्रोग्रामिंग में प्रोग्रामर क्रिएटेड प्रोग्राम सोर्स कोड ब्लॉक में कई सिस्टम डिफाइन या यूजर जनरेटेड एरर या एक्सेप्शन हो सकते हैं, इस वजह से जावा लैंग्वेज में जावा यूजर मल्टी-कैच फीचर्स जिसे Java 7 वर्जन में लांच किया गया या कई कैच ब्लॉक को इम्प्लीमेंट करके इस प्रकार के प्रोग्राम सिचुएशन को इजीली हैंडल कर सकते हैं। जावा इसके यूजर को try-catch प्रोग्राम स्टेटमेंट में किसी भी प्रकार के प्रोग्राम एक्सेप्शन को डील करने के लिए कई मैकेनिज़्म या मेथड प्रोवाइड करता है।

Handling Multiple Exceptions java In Hindi

Multiple Catch Blocks/Before Java 7 version.

जावा प्रोग्रामिंग में वर्जन 7 से पहले, जावा डेवलपर को इंडिविजुअल टाइप के मल्टीप्ल प्रोग्राम एक्सेप्शन एरर इश्यूज को हैंडल या मैनेज करने के लिए मल्टीप्ल कैच ब्लॉक फंक्शन मेथड का यूज़ करना पड़ता था। जिसमे हर यूजर डिफाइन एक कैच ब्लॉक किसी स्पेशल प्रोग्राम एक्सेप्शन को डील या मैनेज करता था, और जब कोई यूजर जनरेटेड प्रोग्राम में एक्सेप्शन थ्रो होता था, तो प्रोग्राम उसे पहले मैचिंग कैच ब्लॉक पर मूव कर देता था।

Example of Java Multiple Catch Blocks.

public class MultipleCatchIllustration {

    public static void main(String[] args) {

        try {

            int[] array = new int[7];

            System.out.println(array[10]); // here This will throw an ArrayIndexOutOfBoundsException error in program

            int output = 20 / 0; // here This will throw an ArithmeticException

        }

        catch (ArrayIndexOutOfBoundsException e) {

            System.out.println(“here Array Index Out of Bounds Exception generated”);

        }

        catch (ArithmeticException e) {

            System.out.println(“here it caught Arithmetic program Exception”);

        }

    }

}

In the above example.

  • यहाँ जावा यूजर के पास इंडिविजुअल प्रोग्राम एक्सेप्शन को हैंडल करने के लिए दो अलग-अलग प्रकार के कैच ब्लॉक डिफाइन किए गए हैं।

Java Multi-Catch Features/In Java 7 and later versions.

जावा प्रोग्रामिंग लैंग्वेज में वर्जन 7 से बाद के सभी नए जावा वर्जन में मल्टी-कैच ब्लॉक फीचर्स को इनबिल्ट किया गया था, जो जावा डेवलपर को एक ही प्रोग्राम कैच ब्लॉक में कई तरह के प्रोग्राम एरर एक्सेप्शन को कैच या हैंडल करने के फीचर्स प्रोवाइड करता है। जावा में मल्टी-कैच ब्लॉक एरर एक्सेप्शन टाइप को सेपरेट डिफाइन करने के लिए डिफाइन किया गया है| इसे जावा मल्टी-कैच प्रोग्राम | ऑपरेटर (पाइप) का यूज़ करके क्रिएट किया जाता है।

Syntax of Java Multi-Catch.

catch (ExceptionType1 | ExceptionType2 | ExceptionType3 | ExceptionType4 e) {

// here you can handle user define program exception

}

Java Multi-Catch Example.

public class MultiCatchIllustration {

    public static void main(String[] args) {

        try {

            int[] array = new int[9];

            System.out.println(array[13]); // here we define a ArrayIndexOutOfBoundsException in program

            int output = 30 / 0; // here ArithmeticException define

        }

        catch (ArrayIndexOutOfBoundsException | ArithmeticException e) {

            System.out.println(“here multi-catch program Exception caught – ” + e);

        }

    }

}

Result – here multi-catch program Exception caught – java.lang.ArrayIndexOutOfBoundsException: Index 13 out of bounds for length 9

In the above example.

  • यहाँ ऊपर दिए गए प्रोग्राम में ArrayIndexOutOfBoundsException और ArithmeticException दोनों प्रोग्राम एक्सेप्शन एरर को मल्टी-कैच सिंटैक्स का यूज़ करके एक ही कैच ब्लॉक में कैच किया गया है।
  • इस प्रोग्राम में एक्सेप्शन ऑब्जेक्ट को एक्सेस करने के लिए वेरिएबल e का यूज़ किया गया है, चाहे यहाँ उसका टाइप कुछ भी डिफाइन किया गया हो।

Special features of the Java multi-catch block.

  • जावा यूजर एक ही प्रोग्राम में यूज़ मल्टी-कैच ब्लॉक में कई प्रोग्राम एक्सेप्शन एरर को कैच कर सकते हैं।
  • यहाँ मल्टी-कैच ब्लॉक में यूज़ एक्सेप्शन पैरेंट-चाइल्ड रिलेशनशिप के रूप में नहीं होना चाहिए। जैसा की, जावा यूजर प्रोग्राम एक्सेप्शन और IOException दोनों को एक साथ कैच नहीं कर सकते है, क्योंकि यहाँ IOException, Exception का एक सबक्लास के रूप में डिफाइन है।
  • कैच ब्लॉक में एक्सेप्शन वेरिएबल (e) का यूज़ सिर्फ़ एक कैच ब्लॉक में किया जा सकता है। क्योकि यह इम्प्लिसिटली के रूप में फाइनल है, और इसे प्रोग्राम में मॉडिफाई नहीं किया जा सकता।

Using the finally block in Java.

चाहे मौजूदा या किसी अन्य प्रोग्राम में कोई एक्सेप्शन थ्रो हो या न हो, finally ब्लॉक हमेशा try-catch ब्लॉक के बाद प्रोग्राम में एग्जीक्यूट होता है, चाहे प्रोग्राम समय से पहले एग्जिट न हो (जैसे System.exit() फंक्शन मेथड को कॉल करके या FatalError को यूज़ करके)। इस ब्लॉक का यूज़ ज्यादातर जावा में रिसोर्स को क्लीन अप करने में किया जाता है. जैसे फ़ाइल स्ट्रीम, डेटाबेस कनेक्शन बंद करना, या दूसरे रिसोर्स रिलीज़ करना, आदि में।

Java finally block example.

public class FinallyBlockIllustration {

    public static void main(String[] args) {

        try {

            int[] array = new int[11];

            System.out.println(array[14]); // here define ArrayIndexOutOfBoundsException

        } catch (ArrayIndexOutOfBoundsException e) {

            System.out.println(“here Array Index Out of Bounds Exception caught in final block”);

        } finally {

            System.out.println(“here Final block successfully run”);

        }

    }

}

In the above example.

  • यहाँ इस प्रोग्राम में catch ब्लॉक यूजर डिफाइन ArrayIndexOutOfBoundsException एरर को कैच करता है।
  • इसी प्रकार finally ब्लॉक को एग्जीक्यूट किया गया है. चाहे यहाँ मौजूदा प्रोग्राम में कोई फाइनल ब्लॉक एक्सेप्शन थ्रो हो या न हो।

Nested Try-Catch Blocks in Java.

जावा यूजर प्रोग्राम में try-catch ब्लॉक्स को एक-दूसरे के अंदर नेस्ट कर मल्टीप्ल नेस्टेड मल्टी-कैच एक्सेप्शन ब्लॉक क्रिएट या डिफाइन कर सकते हैं, नेस्टेड मल्टी-कैच ब्लॉक फीचर्स जावा यूजर के लिए तब हेल्पफुल हो सकता है. जब जावा यूजर को किसी कम्प्लेक्स प्रोग्राम ऑपरेशन के इंडिविजुअल पोरशन में मल्टीप्ल इंडिविजुअल प्रोग्राम एक्सेप्शन को डील या हैंडल करना हो।

Example of Nested Try-Catch Blocks.

public class NestedTryCatchBlockIllustration {

    public static void main(String[] args) {

        try {

            int[] array = new int[7];

            try {

                System.out.println(array[9]); // here ArrayIndexOutOfBoundsException define

            } catch (ArrayIndexOutOfBoundsException e) {

                System.out.println(“internal catch: Array Index Out of Bounds nested block Exception caught in runtime”);

            }

            int result = 30 / 0; // here ArithmeticException define

        } catch (ArithmeticException e) {

            System.out.println(“external catch: Arithmetic nested block Exception caught”);

        }

    }

}

In the above example.

  • यहाँ इस प्रोग्राम में जनरेट होने वाली ArrayIndexOutOfBoundsException को इंटरनल try-catch ब्लॉक हैंडल करता है।
  • इसी प्रकार ArithmeticException प्रोग्राम में आउटर try-catch हैंडल या मैनेज करता है।

Features of the Java multi-catch exception error block.

  • Multiple catch blocks – जावा प्रोग्राम में डिफाइन हर एक प्रोग्राम एक्सेप्शन के लिए एक स्पेशल एक्सेप्शन हैंडलिंग के साथ मल्टीप्ल इंडिविजुअल एक्सेप्शन को हैंडल करने में यूज़ किया जाता है।
  • Multi-catch (Java 7 and later) – यह जावा यूजर को प्रोग्राम में एक ही कैच ब्लॉक में कई तरह के प्रोग्राम एक्सेप्शन को कैच कर डील करने में हेल्प करता है।
  • Finally block – जावा प्रोग्राम में यूज़ फाइनली ब्लॉक यह फिक्स करता है कि मौजूदा प्रोग्राम सोर्स कोड का एक ब्लॉक रन होता रहे, चाहे उसमे प्रोग्राम एक्सेप्शन थ्रो हो या न हो।
  • Rethrowing an exception – यह मौजूदा प्रोग्राम में एक एक्सेप्शन एरर को एक ब्लॉक में हैंडल करने और आगे की प्रोग्राम एक्सेप्शन हैंडलिंग के लिए पास करने के फीचर्स प्रोवाइड करता है।

Leave a Reply