में अपवादों को संभालना मुझे यकीन नहीं है कि जीयूआई में अपवाद कैसे प्रबंधित करें; मेरा लक्ष्य उपयोगकर्ता को यह जानना है कि क्या कोई समझदार संदेश दिखा रहा है।स्विंग जीयूआई
मैं इस तरह कुछ करने के लिए सोच रहा हूँ:
// I'm inside an actionPerformed() method
try {
// do whatever I have to do here
} catch (KnownBusinessException1 e) {
// inform the user and do something;
// most times simply inform the user that it wasn't possible to complete the
// operation and remain in the same window instead of moving forward.
} catch (KnownBusinessException2 e) {
// just as above
} catch (KnownDataAccessException1 e) {
// just as above
} catch (KnownDataAccessException2 e) {
// just as above
} catch (RuntimeException e) { // I want to catch any other unexpected exception,
// maybe NPE or unchecked IllegalArgumentExceptions and so on
// something went wrong, I don't know where nor how but I will surely inform the user
}
अब: कोशिश ब्लॉक में वहाँ पकड़ने के लिए अपवाद जाँच की जाती है, तो यह घोंसला करने के लिए बेहतर आज़माएं/कैच होगा या इन जाँच को पकड़ने के लिए RuntimeException पकड़ने के बाद अपवाद? (यह शायद निर्भर करता है, मुझे यह भी पता नहीं है कि यह बीटीडब्ल्यू होने वाला है या नहीं)
एक और बात: Error
एस के बारे में क्या? अगर मैं उपयोगकर्ता था तो मैं एक अप्रत्याशित शटडाउन का अनुभव नहीं करना चाहूंगा, मुझे लगता है कि एप्लिकेशन मुझे बताता है कि कुछ अविश्वसनीय रूप से गलत हो गया है और कोई भी इसके बारे में कुछ नहीं कर सकता है, "दुनिया का अंत आ रहा है इसलिए मैं अभी बाहर निकल जाएगा "। कम से कम मुझे पता चलेगा कि मेरी गलती नहीं थी।
Btw अगर यह त्रुटियों को पकड़ने के लिए एक अच्छा अभ्यास है पता नहीं है ...: \
एक स्विंग आवेदन में यह करने के लिए एक बेहतर तरीका है?
देखो http://stackoverflow.com/प्रश्न/352780/कब-टू-कैच-जावा-लैंग-त्रुटि –
संभावित डुप्लिकेट [मैं इवेंट डिस्पैच थ्रेड (ईडीटी) अपवाद कैसे पकड़ सकता हूं?] (http://stackoverflow.com/questions/4448523/how-can -आई-कैच-इवेंट-प्रेषण-थ्रेड-एड-अपवाद) – trashgod
@ बेशगुरुंग मैंने इसे पहले से ही पढ़ा था। खैर, अगर इसमें कुछ भी गलत नहीं है, तो मुझे लगता है कि मैं त्रुटियों को पकड़ने के लिए रनटाइम अप्सेप्शन कैच ब्लॉक के बाद एक और कैच ब्लॉक जोड़ूंगा और उपयोगकर्ता को बाहर निकलने से पहले सूचित करने की कोशिश करूंगा। @ trashgod: यह मेरे लिए एक डुप्लिकेट प्रतीत नहीं होता है :) – tmh