अपवाद एक अवांछित त्रुटि है जो किसी प्रोग्राम के निष्पादन के दौरान होती है और सिस्टम अपवाद या एप्लिकेशन अपवाद हो सकती है। अपवाद कुछ भी नहीं बल्कि कुछ असामान्य हैं और आमतौर पर एक घटना या स्थिति होती है जो निष्पादन के दौरान उत्पन्न होती है, जो कार्यक्रम के सामान्य प्रवाह को बाधित कर सकती है।
निम्नलिखित सहित विभिन्न कारणों से एक अपवाद हो सकता है:
- एक उपयोगकर्ता ने गलत डेटा दर्ज किया है या एक डिवीजन ऑपरेटर करता है, जैसे कि शून्य से विभाजित करने का प्रयास।
- संचार के बीच में एक कनेक्शन खो गया है, या सिस्टम मेमोरी समाप्त हो गई है।
exception handling in vb.net in Hindi
जब किसी प्रोग्राम के Execution के दौरान कोई त्रुटि होती है, तो अपवाद प्रोग्राम के एक भाग से दूसरे भाग में नियंत्रण स्थानांतरित करने के लिए त्रुटि को संभालने के लिए exception handling का उपयोग करने का एक तरीका प्रदान करता है। VB.NET अपवाद में प्रोग्राम के एक भाग से दूसरे भाग में नियंत्रणों को संभालने और स्थानांतरित करने के लिए Try, Catch, Finally में, और Throw जैसे चार अंतर्निर्मित कीवर्ड हैं।
Keyword | Description |
---|---|
Try | एक विशेष अपवाद की निगरानी के लिए एक कोशिश ब्लॉक का उपयोग किया जाता है जो एप्लिकेशन के भीतर अपवाद फेंक सकता है। और इन अपवादों को संभालने के लिए, यह हमेशा एक या अधिक कैच ब्लॉक का अनुसरण करता है। |
Catch | यह कोड का एक ब्लॉक है जो एक प्रोग्राम में उस स्थान पर अपवाद हैंडलर के साथ अपवाद को पकड़ता है जहां समस्या उत्पन्न होती है। |
Finally | It is used to execute a set of statements in a program, whether an exception has occurred. |
Throw | जैसा कि नाम से पता चलता है, किसी समस्या के होने के बाद अपवाद को फेंकने के लिए थ्रो हैंडलर का उपयोग किया जाता है। |
Exception Classes in VB.NET in Hindi
VB.net में, कक्षाओं द्वारा दर्शाए गए विभिन्न प्रकार के अपवाद हैं। और ये अपवाद वर्ग अपने माता-पिता के वर्ग 'System.Exception' से उत्पन्न होते हैं।
मुख्य रूप से VB.NET में उपयोग किए जाने वाले दो अपवाद वर्ग निम्नलिखित हैं।
System.SystemException
System.ApplicationException
System.System.Exception: यह एक बेस क्लास है जिसमें सभी पूर्वनिर्धारित अपवाद वर्ग शामिल हैं, और कुछ सिस्टम-जनरेटेड अपवाद वर्ग जो एक रन टाइम के दौरान उत्पन्न हुए हैं जैसे कि डिवाइडबायज़ेरो एक्सेप्शन, इंडेक्सऑटऑफरेंज एक्सेप्शन, स्टैकऑवरफ्लोएक्सप्रेशन, और इसी तरह।
System.ApplicationException: यह एक अपवाद वर्ग है जो प्रोग्रामर या डेवलपर द्वारा एप्लिकेशन के भीतर परिभाषित अपवाद को फेंकता है। इसके अलावा, हम कह सकते हैं कि यह एक उपयोगकर्ता द्वारा परिभाषित अपवाद है जो System.ApplicationException वर्ग से विरासत में मिला है।
Syntax
- Try
- ' code or statement to be executed
- [ Exit Try block]
- ' catch statement followed by Try block
- Catch [ Exception name] As [ Exception Type]
- [Catch1 Statements] Catch [Exception name] As [Exception Type]
- [ Exit Try ]
- [ Finally
- [ Finally Statements ] ]
- End Try
उपरोक्त सिंटैक्स में, ट्राई/कैच ब्लॉक हमेशा एक कोड से घिरा होता है जो एक अपवाद को फेंक सकता है। और कोड को एक संरक्षित कोड के रूप में जाना जाता है। इसके अलावा, हम प्रोग्राम में विभिन्न प्रकार के अपवादों को पकड़ने के लिए कई कैच स्टेटमेंट का भी उपयोग कर सकते हैं, जैसा कि सिंटैक्स में दिखाया गया है।
Example to Exception Handle in Hindi
आइए VB.NET प्रोग्रामिंग में किसी संख्या को शून्य से विभाजित करने के लिए प्रयास करें, पकड़ें और अंत में कीवर्ड का उपयोग करके एक अपवाद को संभालने के लिए एक प्रोग्राम बनाएं।
TryException.vb
- Module TryException
- Sub divExcept(ByVal a As Integer, ByVal b As Integer)
- Dim res As Integer
- Try
- res = a \ b
- ' Catch block followed by Try block
- Catch ex As DivideByZeroException
- Console.WriteLine(" These exceptions were found in the program {0}", ex)
- ' Finally block will be executed whether there is an exception or not.
- Finally
- Console.WriteLine(" Division result is {0}", res)
- End Try
- End Sub
- Sub Main()
- divExcept(5, 0) ' pass the parameters value
- Console.WriteLine(" Press any key to exit...")
- Console.ReadKey()
- End Sub
- End Module
आउटपुट: