RuntimeException
java.lang.Exception
का उप-वर्ग है। RunTimeExceptions
लगभग हमेशा एक प्रोग्रामिंग त्रुटि का परिणाम होता है या/और इनवेरिएंट को पूरा नहीं किया जा रहा है (जब उन्हें नहीं होना चाहिए तो नल को पारित किया जा रहा है), इसलिए आपको उन्हें java.lang.Exception
(जिसे चेक अपवादों की तरह) पकड़ना नहीं है। आप उन्हें पकड़ नहीं पाते हैं क्योंकि रन टाइम सिस्टम ठीक होने के लिए बहुत कम कर सकता है।
मुझे लगता है कि वाक्यांश रनटाइम का मतलब है कि जब प्रोग्राम चल रहा है (स्पष्ट रूप से !!) और महत्वपूर्ण रूप से संकलक चेक किए गए अपवाद के साथ कोड में चेक को मजबूर नहीं करता है। मुझे लगता है कि यह एक उदाहरण है जहां कक्षा को उचित रूप से नाम देना मुश्किल है। मुझे लगता है कि वे डिफ़ॉल्ट रूप से अपवादों को अनचेक कर सकते हैं और इसे अपवाद कहा जाता है। फिर चेकडएक्सप्शन प्रदान करने के लिए इसे उप-वर्गीकृत किया गया - हर कोई java.lang को कॉल करता है। एक अपवाद अपवाद अपवाद, लेकिन यह वर्ग नाम से स्पष्ट नहीं है। लेकिन उन्होंने नहीं किया और हमारे पास है:
> java.lang.Exception is referred to as "Checked Exception"
> java.lang.RuntimeException is referred to as "Unchecked Exception"