मेरी निम्नलिखित स्थिति है।
मेरे पास एक जावा क्लास है जो दूसरे बेस क्लास से विरासत में मिली है और एक विधि को ओवरराइड करती है। आधार विधि अपवादों को नहीं फेंकती है और इस प्रकार इसकी कोई throws ...घोषणा नहीं है ।
अब मेरी खुद की विधि अपवाद को फेंकने में सक्षम होनी चाहिए, लेकिन मेरे पास या तो विकल्प है
- अपवाद निगल
- एक फेंकता घोषणा जोड़ें
दोनों संतुष्ट नहीं हैं क्योंकि पहले वाला चुपचाप अपवाद को अनदेखा करेगा (ठीक है मैं कुछ लॉगिंग कर सकता था) और दूसरा अलग-अलग विधि हेडर के कारण कंपाइलर त्रुटियां उत्पन्न करेगा।
public class ChildClass extends BaseClass {
@Override
public void SomeMethod() {
throw new Exception("Something went wrong");
}
}