अधिकांश समय, केवल एक चीज मैं एक अंत में के लिए इस्तेमाल किया ब्लॉक दिखाई है की तरहसंसाधनों को बंद करने के लिए मुझे अंततः उपयोग करने की आवश्यकता क्यों है?
FileInputStream f;
try{
f= new FileInputStream("sample.txt");
//something that uses f and sometimes throws an exception
}
catch(IOException ex){
/* Handle it somehow */
}
finally{
f.close();
}
कुछ मेरा प्रश्न है, अगर f की गुंजाइश संलग्न ब्लॉक, इसलिए हम अंत में में इसे बंद करने की आवश्यकता है के साथ समाप्त होता ?
आपके मामले में, 'एफ' का दायरा try-block –
@ ओली चार्ल्सवर्थ के साथ समाप्त नहीं होता है: यह स्पष्ट रूप से एक पठनीय उदाहरण है। –
एक फ़ाइल संदर्भ बनाना भविष्य के संदर्भ के लिए अपवाद (या एक फ़ाइल हैंडल बनाएँ) फेंक नहीं देता है। http://download.oracle.com/javase/tutorial/essential/exceptions/tryResourceClose.html –