मैं जावा प्रतिबिंब का उपयोग करके एक विधि का आह्वान करना चाहता हूं।जावा प्रतिबिंब का उपयोग कर अपवाद को फेंकने वाली विधि को कैसे शुरू करें?
समस्या यह है कि यह विधि (जिसे मैंने लिखा) एक अपवाद फेंकता है (मैंने myCustomException बनाया)। जब मैं एक कोशिश/पकड़ खंड जोड़ता हूं, तो मैं अपनी परियोजना नहीं चला सकता, क्योंकि ग्रहण कहता है "पकड़ने का खंड पहुंच योग्य नहीं है"।
यहाँ है जब मैं MyClass कक्षा में MyMethod आह्वान करने के लिए प्रयास करें:
270. myMethod.invoke(null, myParam); // NB : null because myMethod is static
जब MyMethod फेंक नहीं है एक MyCustomException, eveything ठीक है।
मान लीजिए कि मैं fooMethod(), जो वर्ग BarClass() में है को लागू करने की कोशिश करते हैं, और:: लेकिन जब यह एक MyCustomException फेंकता है, मैं इस त्रुटि संदेश मिलता है
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.tests.MyClass.test5(270)
at com.tests.MyClass.main(297)
Caused by: com.tests.MyCustomException
at com.tests.barClass.fooMethod(BarClass.java:129)
... 6 more
क्या यह भी संभव है? वैसे भी मदद के लिए धन्यवाद।
ऐसा लगता है कि विधि मंगलाचरण की तरह एक अपवाद फेंक रहा है। कोशिश के साथ इसे चारों ओर घेरो। – Razvan