में सिग्नेक्टिक चीनी की कोशिश करें। मुझे आश्चर्य है कि अगर जावा (शुद्ध कोड, कुछ ग्रहण वस्तु नहीं) में "सिंटैक्टिक चीनी" को दोहराया जाने वाला प्रयास करने का प्रयास करें तो दोबारा प्रयास करें। अर्थात्, मुझे कार्यों का एक गुच्छाजावा
public void foo(){
try{
// bla
} catch (Exception e) {
System.out.println("caught exception:");
e.printStackTrace();
}
}
public void bar(){
try{
// other bla
} catch (Exception e) {
System.out.println("caught exception:");
e.printStackTrace();
}
}
और इसी तरह से लपेटना है। मैं
@excepted public void foo(){
// bla
}
@excepted public void bar(){
// other bla
}
मुझे लगता है कि इस प्रकार की चीनी पाइथन में संभव थी। क्या जावा में यह संभव है?
पकड़ना और स्टडआउट के लिए अपवाद को छोड़ना आम तौर पर एक खराब विचार है। इसके बजाए, या तो * अपवाद को पकड़ें (कोड को कॉल करने के लिए छोड़कर) या इसे उचित के रूप में संभाल लें। "इसे उचित रूप से संभालने" के लिए कोई वास्तविक अमूर्तता उपलब्ध नहीं है क्योंकि यह "ब्लै" की सामग्री के आधार पर भिन्न होती है। –
यदि आप बिना किसी अपवाद को संभालने के लिए विशिष्ट कुछ भी करने जा रहे हैं, तो आप पूरे प्रोग्राम को एक ही कोशिश/पकड़ – Matthew
में लपेट सकते हैं, सामान्य 'अपवाद' को पकड़ना आम तौर पर एक खराब विचार है, जब तक कि आप ढांचे को लिख नहीं लेते कुछ प्रकार का कोड। –