हां, हम कैच में विधि का रिटर्न स्टेटमेंट लिख सकते हैं और अंत में ब्लॉक कर सकते हैं।
- ऐसी स्थिति है जहां एक विधि का रिटर्न प्रकार होगा और हम शर्तों के आधार पर विधि के किसी भी भाग पर कुछ मूल्य वापस कर सकते हैं।
- यदि हम कैच ब्लॉक में कोई मान लौटाते हैं और हम विधि के अंत में एक मान वापस कर सकते हैं, तो कोड सफलतापूर्वक निष्पादित होगा।
- यदि हम कैच ब्लॉक में एक मान लौटाते हैं और हम एक मान वापस करने के बाद विधि के अंत में एक बयान लिख सकते हैं, तो कोड निष्पादित नहीं होगा, इसलिए यह पहुंच से बाहर कोड बन गया क्योंकि हम जानते हैं कि जावा अगम्य कोड का समर्थन नहीं करता है।ली>
- यदि हम अंतिम ब्लॉक में कोई मान लौटाते हैं और विधि के अंत में वापसी मान रखने की कोई आवश्यकता नहीं है।
उदाहरण 1
public class CatchReturn { int calc() { try { int x=12/0; } catch (Exception e) { return 1; } return 10; } public static void main(String[] args) { CatchReturn cr = new CatchReturn(); System.out.println(cr.calc()); } }
आउटपुट
1
उदाहरण 2
public class FinallyReturn { int calc() { try { return 10; } catch(Exception e) { return 20; } finally { return 30; } } public static void main(String[] args) { FinallyReturn fr = new FinallyReturn(); System.out.println(fr.calc()); } }
आउटपुट
30