फेंक और के उपयोग के प्रभावों में महत्वपूर्ण अंतर हैं, नए अपवाद ()
को फेंक दें। चलो उनके संबंधित व्यवहार में गोता लगाएँ:
]
फेंक
में उपयोग किया जाता है ब्लॉक, यह मूल अपवाद के प्रकार, संदेश और स्टैक ट्रेस को बरकरार रखता है। यह अपवाद को संशोधित किए बिना प्रचार जारी रखने की अनुमति देता है।
कोशिश { ... }
पकड़ {थ्रो}
इस परिदृश्य में, यदि कोई अपवाद में होता है, तो
ब्लॉक, कैच
]
दूसरी ओर,
नया अपवाद (संदेश) फेंकें एक नया अपवाद उदाहरण बनाता है और निर्दिष्ट संदेश का उपयोग करता है। यह एक्शन स्टैक ट्रेस को रीसेट करता है,
कैच
try { ... }
catch { throw }
]
]
] ऐसा करने से मूल अपवाद का प्रचार होगा, लेकिन स्टैक ट्रेस रीसेट हो जाएगा। यह अपवादों के स्रोत को बहुत मुश्किल बनाता है।
कस्टम अपवाद बनाएँ
कुछ मामलों में, अतिरिक्त जानकारी प्रदान करने के लिए एक कस्टम अपवाद ऑब्जेक्ट में सभी अपवादों को लपेटना आवश्यक हो सकता है। ऐसा करने के लिए, सभी चार अपवाद निर्माणकर्ताओं सहित अपवाद से विरासत में मिली एक नए अपवाद वर्ग को परिभाषित करें। वैकल्पिक रूप से, आप एक अतिरिक्त कंस्ट्रक्टर जोड़ सकते हैं जो मूल अपवाद और अतिरिक्त जानकारी को स्वीकार करता है। एक कस्टम अपवाद फेंकते समय, अपने स्टैक ट्रेस और अन्य गुणों को संरक्षित करने के लिए एक आंतरिक अपवाद पैरामीटर के रूप में मूल अपवाद को पास करना सुनिश्चित करें।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3