Throwing Exceptions c# in hindi

Throwing Exceptions c# In Hindi

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

Throwing Exceptions c# in hindi

Syntax for throwing an exception in a C# program.

throw new Exception(“Display Error message”);

element of throwing an exception.

  • throw – यहाँ throw कीवर्ड का यूज़ किसी प्रोग्राम में एक्सेप्शन एरर को थ्रो करने में किया जाता है।
  • new Exception(“Display Error message”) – यह मौजूदा प्रोग्राम में एक्सेप्शन एरर का एक नया इंस्टेंस क्रिएट करता है. इस कंडीशन में, यह एक जेनेरिक प्रोग्राम एक्सेप्शन है. लेकिन यह मौजूदा प्रोग्राम में किसी भी तरह का एक स्पेशल एक्सेप्शन एरर हो सकता है. जैसे, ArgumentNullException, DivideByZeroException, आदि है।

Types of Exceptions in C#.

  • Custom Exception – C# प्रोग्रामर किसी प्रोग्राम में अपने हिसाब से कस्टम मैन्युअल जिस प्रकार का एक्सेप्शन एरर सिग्नल डिस्प्ले करना चाहते हैं. उसके आधार पर C# यूजर अलग-अलग तरह के प्रोग्राम एक्सेप्शन प्रोग्राम एरर को थ्रो कर सकते हैं.
  • Exception – यह C# प्रोग्राम में सभी तरह के एक्सेप्शन के लिए एक बेस क्लास है। एक्सेप्शन का यूज़ प्रोग्राम में तब किया जा सकता है. जब कोई स्पेशल यूजर डिफाइन प्रोग्राम एक्सेप्शन क्लास किसी पर्टिकुलर एरर केस में एडजस्ट न हो।
  • ArgumentNullException – यह एक्सेप्शन किसी प्रोग्राम में तब जनरेट होता है, जब किसी यूजर डिफाइन क्लास मेथड को ऐसा कोई null आर्गुमेंट वैल्यू मिलता है. जिसे उस प्रोग्राम में null बिहेवियर की परमिशन नहीं है।
  • ArgumentOutOfRangeException – यह एक्सेप्शन किसी प्रोग्राम में तब डिस्प्ले होता है, जब किसी क्लास मेथड को कोई ऐसा आर्गुमेंट वैल्यू मिलता है. जो मौजूदा क्लास अलाउड रेंज से बाहर है।
  • InvalidOperationException – यह एक्सेप्शन किसी प्रोग्राम में तब डेवलप होता है, जब कोई प्रोग्रामिंग ऑपरेशन ऑब्जेक्ट की मौजूदा कंडीशन के लिए इनवैलिड होता है।
  • FileNotFoundException – यह एक्सेप्शन किसी प्रोग्राम में तब प्रीव्यू होती है. जब मौजूदा प्रोगाम में स्टोर कोई फ़ाइल नहीं मिल पाती है।
  • IOException – यह C# प्रोग्राम में I/O (इनपुट/आउटपुट) फाइल ऑपरेशन जैसे, फाइल हैंडलिंग में किसी फ़ाइल को रीड और राइट करने के प्रोसेस के दौरान एक एक्सेप्शन एरर को प्रीव्यू करने के लिए होता है।

A basic example of throwing an exception in a C# program.

तो चलिए C# प्रोग्रामिंग में एक ऐसा एक्साम्प्ल क्रिएट करे. जिसमे हम यूज़र इनपुट वैल्यू इनवैलिड होने पर मैन्युअल रूप से एक प्रोग्राम एक्सेप्शन एरर को थ्रो कर सके.

using System;

class Program

{

    static void Main()

    {

        try

        {

            int output = distributeIntegers(30, 0);  // here This will throw an program exception

            Console.WriteLine(“Display output – ” + output);

        }

        catch (DivideByZeroException excption)

        {

            Console.WriteLine(“Display Error – ” + excption.Message);

        }

    }

    static int distributeIntegers (int fraction, int divisor)

    {

        if (divisor == 0)

        {

            throw new DivideByZeroException(“divisor value never be zero.”);

        }

        return fraction / divisor;

    }

}

Explanation in the throwing exception example.

  • यहाँ इस एक्साम्प्ल में distributeIntegers मेथड यह चेक करता है कि क्या divisor वैल्यू 0 है। अगर है, तो मेथड एक DivideByZeroException एक एक्सेप्शन को थ्रो करता है।
  • फिर इसमें Main मेथड में catch ब्लॉक में प्रोग्राम एरर एक्सेप्शन कैच हो जाता है, और एक एरर मैसेज डिस्प्ले होता है।

Creating a Custom Exception in a C# Program.

C# प्रोगामर अपने प्रोग्राम एप्लिकेशन में किसी स्पेशल एक्सेप्शन एरर को हैंडल करने के लिए अपनी एक कस्टम एक्सेप्शन एरर क्लास भी क्रिएट कर सकते हैं। C# में एक कस्टम एक्सेप्शन क्लास सामान्य रूप से एक बेस एक्सेप्शन क्लास से इंस्पायर्ड होती है।

Creating a Custom Exception in C#.

using System;

public class InsufficientAmountException : Exception

{

    public InsufficientAmountException() { }

    public InsufficientAmountException(string info)

        : base(info) { }

    public InsufficientAmountException(string info, Exception inner)

        : base(info, inner) { }

}

Custom Exception explanation.

  • यहाँ इस प्रोग्राम कंडीशन में कस्टम एक्सेप्शन क्लास InsufficientAmountException का यूज़ किसी स्पेशल एक्सेप्शन एरर को इंडीकेट या डिस्प्ले करने में किया जा सकता है. जैसे, जब कोई यूज़र अपने अकाउंट में डिपोसिट मौजूद पैसे से ज़्यादा पैसे निकालने की कोशिश करता है।

Example of using a custom exception in C#.

using System;

// here we create a Custom Exception Class

class InsufficientDepositException : Exception

{

    public InsufficientDepositException(string Message) : base(Message)

    {

    }

}

class Program

{

    static void Main()

    {

        try

        {

            Withdraw(9999, 21000);  // here This will throw a custom user exception

        }

        catch (InsufficientDepositException excpton)

        {

            Console.WriteLine(“Display Error: ” + excpton.Message);

        }

    }

    static void Withdraw(decimal balance, decimal withdrawalAmount)

    {

        if (withdrawalAmount > balance)

        {

            throw new InsufficientDepositException (“No enough amount for withdrawal.”);

        }

        Console.WriteLine(“Amount Withdrawal transaction successful.”);

    }

}

Here’s the custom exception.

  • यहाँ ऊपर दिए गए प्रोग्राम में Withdraw मेथड मौजूदा प्रोग्राम में यह चेक करता है कि यूजर के द्वारा विड्रॉल अमाउंट मौजूदा डिपोसिट अमाउंट बैलेंस से ज़्यादा है, या नहीं है।
  • यदि यहाँ ऐसा होता है, तो यह एक InsufficientDepositException एरर को थ्रो करता है. जिसे यूजर डिफाइन catch ब्लॉक में कैच किया जाता है।

Rethrowing Exceptions in C#.

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

Example of rethrowing a C# exception.

using System;

class Program

{

    static void Main()

    {

        try

        {

            ManageData();

        }

        catch (Exception excpton)

        {

            Console.WriteLine(“Exception Catch in Start data – ” + excpton.Message);

        }

    }

    static void ManageData()

    {

        try

        {

            // here it Simulate an program exception error

            throw new InvalidOperationException(“Display issue when manage data processing.”);

        }

        catch (InvalidOperationException excpton)

        {

            Console.WriteLine(“Exception Catch in Manage Data – ” + excpton.Message);

            throw;  // here it Rethrow the caught exception error

        }

    }

}

Rethrowing Exceptions Example Explanation.

  • यहाँ इस प्रोग्राम में ManageData मेथड एक InvalidOperationException को प्रोग्राम में एरर को थ्रो करता है, जो catch ब्लॉक में कैच किया जाता है।
  • फिर इसमें एक्सेप्शन को throw कीवर्ड का यूज़ करके रीथ्रो किया जाता है. जिससे इसे Main मेथड में बाहरी catch ब्लॉक द्वारा कैच किया जा सकता है।

Throwing exceptions in conditional logic in C#.

C# प्रोग्रामर अपने प्रोग्राम सोर्स कोड में कुछ स्पेसिफिक कंडीशन लॉजिक के आधार पर एक कंडीशनली लॉजिक प्रोग्राम एक्सेप्शन एरर को भी थ्रो कर सकते हैं.

using System;

class Program

{

    static void Main()

    {

        try

        {

            TestAge(20);  // here we set the stu_age is below the legal threshold parameter

        }

        catch (ArgumentException excpton)

        {

            Console.WriteLine(excpton.Message);

        }

    }

    static void TestAge(int stu_age)

    {

        if (stu_age < 27)

        {

            throw new ArgumentException(“Here Student Age at least 27 or older to process.”);

        }

        Console.WriteLine(“Student permission provided.”);

    }

}

Throwing exceptions in conditional logic example explanation.

  • यहाँ इस प्रोग्राम में stu_age मेथड एक ArgumentException प्रोग्राम एक्सेप्शन एरर मैसेज को थ्रो करता है. यदि यहाँ स्टूडेंट ऐज 27 साल से कम है. जिससे यह पक्का होता है कि सिर्फ़ Here Student Age at least 27 or older to process मैसेज स्टेटमेंट को प्रिंट करता हैं।

Throwing Exceptions Summary in C#.

  • किसी भी C# प्रोग्राम में एक्सेप्शन एरर को थ्रो करने से आप उन प्रोग्राम मिस्टेक्स को इंडीकेट कर सकते हैं. जिन्हें किसी प्रोग्राम में स्पेशल हैंडलिंग की आवश्यकता होती है।
  • C# यूजर बिल्ट-इन प्रोग्राम एक्सेप्शन, ArgumentNullException, InvalidOperationException, आदि या कस्टम प्रोग्राम एक्सेप्शन एरर को थ्रो कर सकते हैं।
  • यदि किसी प्रोग्राम में एक्सेप्शन को कॉल स्टैक में पास करने की ज़रूरत है. तो आप उन्हें throw कीवर्ड का यूज़ करके फिर से प्रोग्राम में रीथ्रो कर सकते है।

Leave a Reply