exception handling in java in Hindi
जावा में अपवाद हैंडलिंग रनटाइम त्रुटियों को संभालने के लिए शक्तिशाली तंत्र में से एक है ताकि एप्लिकेशन के सामान्य प्रवाह को बनाए रखा जा सके।
इस ट्यूटोरियल में, हम जावा अपवादों, इसके प्रकारों और चेक किए गए और अनियंत्रित अपवादों के बीच अंतर के बारे में जानेंगे।
What is Exception in Java in Hindi?
शब्दकोश अर्थ: अपवाद एक असामान्य स्थिति है।
जावा में, एक अपवाद एक ऐसी घटना है जो प्रोग्राम के सामान्य प्रवाह को बाधित करती है। यह एक वस्तु है जिसे रनटाइम पर फेंका जाता है।
What is Exception Handling in Hindi?
exception handling रनटाइम त्रुटियों जैसे ClassNotFoundException, IOException, SQLException, RemoteException, आदि को संभालने के लिए एक तंत्र है।
Advantage of Exception Handling
अपवाद से निपटने का मुख्य लाभ एप्लिकेशन के सामान्य प्रवाह को बनाए रखना है। एक exceptionआम तौर पर applicationके सामान्य प्रवाह को बाधित करता है; इसलिए हमें exception को संभालने की जरूरत है। आइए एक परिदृश्य पर विचार करें:
- statement 1;
- statement 2;
- statement 3;
- statement 4;
- statement 5;//exception occurs
- statement 6;
- statement 7;
- statement 8;
- statement 9;
- statement 10;
मान लीजिए कि जावा प्रोग्राम में 10 स्टेटमेंट हैं और स्टेटमेंट 5 में एक अपवाद होता है; शेष कोड निष्पादित नहीं किया जाएगा, अर्थात, कथन 6 से 10 निष्पादित नहीं किए जाएंगे। हालांकि, जब हम एक्सेप्शन हैंडलिंग करते हैं, तो बाकी स्टेटमेंट्स को एक्जीक्यूट किया जाएगा। इसलिए हम जावा में एक्सेप्शन हैंडलिंग का उपयोग करते हैं।
क्या आप जानते हैं?
- चेक किए गए और अनियंत्रित अपवादों में क्या अंतर है?
- कोड int data=50/0; के पीछे क्या होता है?
- एकाधिक कैच ब्लॉक का उपयोग क्यों करें?
- क्या कोई संभावना है जब अंत में ब्लॉक निष्पादित नहीं किया जाता है?
- exception propagation क्या है?
- थ्रो एंड थ्रो कीवर्ड में क्या अंतर है?
- मेथड ओवरराइडिंग के साथ एक्सेप्शन हैंडलिंग का उपयोग करने के लिए 4 नियम क्या हैं?
Hierarchy of Java Exception classes
Java.lang.Throwable क्लास Java Exception hierarchy inherited का मूल वर्ग है जो दो उपवर्गों द्वारा विरासत में मिला है: Exception और Error। Java Exception classes का hierarchyनीचे दिया गया है:
exception handling in java in hindi |
Types of Java Exceptions in Hindi
मुख्य रूप से दो प्रकार के Exceptionsहैं: चेक और अनचेक। एक त्रुटि को unchecked exception माना जाता है। हालाँकि, Oracle के अनुसार, तीन प्रकार के exception हैं:
- Checked Exception
- Unchecked Exception
- Error
Difference between Checked and Unchecked Exceptions in Hindi
1) Checked Exception
RuntimeException और Error को छोड़कर जो वर्ग सीधे थ्रोएबल क्लास को इनहेरिट करते हैं, उन्हें चेक किए गए अपवाद के रूप में जाना जाता है। उदाहरण के लिए, IOException, SQLException, आदि। चेक किए गए Exception को compile-time पर चेक किया जाता है।
2) Unchecked Exception
RuntimeException को इनहेरिट करने वाले वर्गों को अनियंत्रित अपवाद के रूप में जाना जाता है। उदाहरण के लिए, ArithmeticException, NullPointerException, ArrayIndexOutOfBoundsException, आदि। अनियंत्रित अपवादों को compile-time पर चेक नहीं किया जाता है, लेकिन उन्हें रनटाइम पर चेक किया जाता है।
3) Error
त्रुटि अपूरणीय है। त्रुटियों के कुछ उदाहरण OutOfMemoryError, VirtualMachineError, AssertionError आदि हैं।
जावा अपवाद कीवर्ड
जावा पांच कीवर्ड प्रदान करता है जिनका उपयोग अपवाद को संभालने के लिए किया जाता है। निम्न तालिका प्रत्येक का वर्णन करती है।
Keywords For Java Exception in Hindi
आइए जावा अपवाद हैंडलिंग का एक उदाहरण देखें जिसमें हम अपवाद को संभालने के लिए ट्राइ-कैच स्टेटमेंट का उपयोग कर रहे हैं।
Keyword | Description |
---|---|
try | "Try" कीवर्ड का उपयोग उस ब्लॉक को निर्दिष्ट करने के लिए किया जाता है जहां हमें अपवाद कोड रखना चाहिए। इसका मतलब है कि हम अकेले ट्राई ब्लॉक का उपयोग नहीं कर सकते। कोशिश ब्लॉक का पालन या तो कैच या अंत में किया जाना चाहिए। |
catch | अपवाद को संभालने के लिए "catch" ब्लॉक का उपयोग किया जाता है। इसके पहले try ब्लॉक होना चाहिए जिसका अर्थ है कि हम अकेले कैच ब्लॉक का उपयोग नहीं कर सकते हैं। इसके बाद अंत में बाद में ब्लॉक किया जा सकता है। |
finally | प्रोग्राम के आवश्यक कोड को निष्पादित करने के लिए "finally" ब्लॉक का उपयोग किया जाता है। यह निष्पादित किया जाता है कि कोई अपवाद संभाला जाता है या नहीं। |
throw | throw an exception के लिए "throw" कीवर्ड का उपयोग किया जाता है। |
throws | अपवाद घोषित करने के लिए "throws" कीवर्ड का उपयोग किया जाता है। यह निर्दिष्ट करता है कि विधि में एक अपवाद हो सकता है। यह नहीं throw an exception है। यह हमेशा विधि हस्ताक्षर के साथ प्रयोग किया जाता है। |
उपरोक्त उदाहरण में, 100/0 एक अंकगणित अपवाद उठाता है जिसे एक कोशिश-पकड़ ब्लॉक द्वारा नियंत्रित किया जाता है।
Java Exception Handling in Hindi Example
ऐसे कुछ परिदृश्य दिए गए हैं जहां अनियंत्रित अपवाद हो सकते हैं। वे इस प्रकार हैं:
JavaExceptionExample.java
- public class JavaExceptionExample{
- public static void main(String args[]){
- try{
- //code that may raise exception
- int data=100/0;
- }catch(ArithmeticException e){System.out.println(e);}
- //rest code of the program
- System.out.println("rest of the code...");
- }
- }
Common Scenarios of exception handling in java in Hindi
1) A scenario where ArithmeticException occurs
यदि हम किसी संख्या को शून्य से विभाजित करते हैं, तो एक अंकगणित अपवाद होता है।
- int a=50/0;//ArithmeticException
2) A scenario where NullPointerException occurs
यदि हमारे पास किसी भी वेरिएबल में शून्य मान है, तो वेरिएबल पर कोई भी ऑपरेशन करने से NullPointerException फेंकता है।
- String s=null;
- System.out.println(s.length());//NullPointerException
3) A scenario where NumberFormatException occurs
यदि किसी चर या संख्या का स्वरूपण बेमेल है, तो इसका परिणाम NumberFormatException हो सकता है। मान लीजिए कि हमारे पास एक स्ट्रिंग वेरिएबल है जिसमें वर्ण हैं; इस वेरिएबल को अंकों में बदलने से NumberFormatException होगा।
- String s="abc";
- int i=Integer.parseInt(s);//NumberFormatException
4) A scenario where ArrayIndexOutOfBoundsException occurs
जब कोई सरणी इसके आकार से अधिक हो जाती है, तो ArrayIndexOutOfBoundsException होता है। ArrayIndexOutOfBoundsException होने के अन्य कारण भी हो सकते हैं। निम्नलिखित कथनों पर विचार करें।
- int a[]=new int[5];
- a[10]=50; //ArrayIndexOutOfBoundsException