दिलचस्प पोस्ट
एंड्रॉइड पर जावा कोड हालांकि शैल आदेश चल रहा है? +0.0 और -0.0 पर कौन से आपरेशन और फ़ंक्शन अलग-अलग अंकगणित परिणाम देते हैं? उथले क्लोन को पूर्ण क्लोन में परिवर्तित करें ईएफ कोड के लिए ProviderManifestToken को कॉन्फ़िगर कैसे करें इनपुट फ़ाइल नियंत्रण से एक विशिष्ट चयनित फ़ाइल को कैसे निकालना है एप्सिलॉन के उपयोग से दोहरी से शून्य की तुलना करें लॉगिन द्वारा अनुरोधित डेटाबेस "परीक्षण" नहीं खोल सकता लॉगिन विफल हुआ। उपयोगकर्ता 'xyz \ ASPNET' के लिए प्रवेश विफल रूट के मुताबिक डायरेक्टिव टेम्पलेटउपलेट बताएं java.sql.SQLException: स्तंभ गिनती पंक्ति 1 पर मान गणना से मेल नहीं खाती एंड्रॉइड: कई क्लिक करने योग्य बटन के साथ सूची दृश्य तत्व जावास्क्रिप्ट को संसाधित करने के लिए मैकेनिक का उपयोग कैसे करूं? गोलाकार कोनों के साथ एंड्रॉइड में एक दृश्य कैसे बनाएं मेरी प्रोग्राम दुर्घटना क्यों नहीं है जब मैं एक सरणी के अंत में लिखता हूं? क्या गोलांग में यह कास्टिंग है? स्काला में केस ऑब्जेक्ट बनाम एन्युमरेशन

स्टेक ट्रेस को खोए बिना जावा में अपग्रेड करना अपवाद

सी # में, मैं throw; उपयोग कर सकता हूं throw; स्टैक ट्रेस को संरक्षित करते समय एक अपवाद को पुनर्स्थापित करने के लिए बयान:

 try { ... } catch (Exception e) { if (e is FooException) throw; } 

क्या जावा में ऐसा कुछ है ( मूल स्टैक ट्रेस खोना नहीं )?

वेब के समाधान से एकत्रित समाधान "स्टेक ट्रेस को खोए बिना जावा में अपग्रेड करना अपवाद"

 catch (WhateverException e) { throw e; } 

आपके द्वारा पकड़े गए अपवाद को आसानी से पुनर्स्थापित कर देगा (स्पष्ट रूप से आस-पास की विधि को इसके हस्ताक्षर आदि के माध्यम से अनुमति देनी होगी)। अपवाद मूल स्टैक ट्रेस को बनाए रखेगा।

मैं चाहूंगा की:

 try { ... } catch (FooException fe){ throw fe; } catch (Exception e) { ... } 

आप अपवाद को दूसरे में भी लपेट सकते हैं और मूल पैराग्राफ के रूप में थ्रोहेबल के रूप में अपवाद में गुजरने से मूल स्टैक ट्रेस को रख सकते हैं:

 try { ... } catch (Exception e) { throw new YourOwnException(e); } 

जावा में लगभग एक ही है:

 try { ... } catch (Exception e) { if (e instanceof FooException) throw e; } 

जावा में, आप केवल अपवाद को throw e , तो throw e बजाय throw e throw जावा स्टैक ट्रेस का रखरखाव करता है।

कुछ इस तरह

 try { ... } catch (FooException e) { throw e; } catch (Exception e) { ... } 
 public int read(byte[] a) throws IOException { try { return in.read(a); } catch (final Throwable t) { /* can do something here, like in=null; */ throw t; } } 

यह एक ठोस उदाहरण है जहां विधि IOException फेंकता है final साधन t केवल प्रयास ब्लॉक से फेंक दिया अपवाद रख सकते हैं। अतिरिक्त पढ़ने की सामग्री यहां और यहां मिल सकती है ।