रिसेवर आमतौर पर रिसीवर की जांच की जाती है रनटाइम पर समस्या को ठीक करने के लिए कुछ सार्थक कार्रवाई कर सकते हैं/चाहिए।
Unchecked Exceptions — The Controversy का कहना है:
यहाँ लब्बोलुआब यह दिशानिर्देश है: एक ग्राहक यथोचित, एक अपवाद से उबरने यह एक जाँच अपवाद बनाने के लिए उम्मीद की जा सकती है। यदि कोई ग्राहक अपवाद से पुनर्प्राप्त करने के लिए कुछ भी नहीं कर सकता है, तो इसे एक अनचेक अपवाद बनाएं।
ClassNotFoundException
रों का सबसे सामान्य स्रोत
classLoader.loadClass(className);
कि संजीदगी से भार एक वर्ग एक नाम एक विन्यास फाइल, धारावाहिक इनपुट, या दूरस्थ प्रक्रिया कॉल में पाया के आधार पर की तरह कोड है।
यह ClassNotFoundError
के विपरीत जो सबसे अधिक बार एक प्रोग्राम है जो था स्थिर रनटाइम पर JVM के संयोजक द्वारा नहीं पाया जा सकता है जो अन्य वर्गों के साथ संकलित से परिणाम में है।
क्या चिंतनशील उपयोग के मामले (चयनित) एक विफलता से स्थिर संकलित कोड (रनटाइम त्रुटि) से जोड़ने के लिए अलग करता है?
प्रसंग
चिंतनशील: फोन करने वाले जानता है, जहां स्ट्रिंग से और क्यों लोड प्रयास किया गया था आया था।
स्टेटिक: कॉलर बस एक कक्षा का उपयोग करने की कोशिश कर रहा है जो संकलन समय पर उपलब्ध था। कोई संदर्भ उपलब्ध नहीं है।
रिकवरी
चिंतनशील: कोलर असफल ओवर कर सकते हैं एक अलग कार्यान्वयन करने के लिए या एक डिफ़ॉल्ट रणनीति की कोशिश करो।
स्टेटिक: जावा भाषा स्पष्ट रूप से विभिन्न लिंक बिंदुओं को प्रतिस्थापित करने का समर्थन नहीं करती है।
अलग ढंग से व्यक्त
चिंतनशील: कोलर अक्सर एक अलग तरह के लिए त्रुटि कन्वर्ट चाहिए deserialize करने में असफल रहने पर
एक IOException
की तरह,।
स्टेटिक: यदि आपके प्रोग्राम का हिस्सा गुम है, तो आप यह समझाने के लिए अपने कार्यक्रम के आवश्यक भाग पर भरोसा नहीं कर सकते कि क्यों एक भाग अन्य भागों में गायब है।
IMHO सबसे बड़ी गलती कर रहा था के रूप में कुछ अन्य कारणों के बारे में सोचा 'SQLException' जाँच की। – Bohemian
@ बोहेमियन - मेरा पहला बुलेट बिंदु देखें :-) –
मैं एक अंग पर बाहर जाऊंगा और कहूंगा कि यह इस मामले में एक तथ्य है। जब आप जेडीबीसी-कोड का उपयोग करते हैं, तो यह कोशिश-पकड़ने वाले ब्लॉक के साथ झुका हुआ है जो कभी भी उपयोग नहीं किया जाता है। कभी। जब आपके पास परफंक्शरी कोड के ओडल्स होते हैं, तो आप जानते हैं कि आपने एक डिज़ाइन गलत बना दिया है। – Bohemian