जावा 7 के प्रयास-संसाधनों के साथ घोषणा की आवश्यकता क्यों है और सभी, लेकिन मैं अपने सिर को लपेट नहीं सकता कि try
कथन में संसाधन की घोषणा को शामिल करने की आवश्यकता क्यों है। मेरे पेट कहते हैं निम्नलिखित संभव हो जाना चाहिए:जावा के प्रयास-संसाधन-संसाधन
CloseableResource thing;
try (thing = methodThatCreatesAThingAndDoesSomeSideEffect()) {
// do some interesting things
}
thing.collectSomeStats();
ओह, यह एक सिंटैक्स त्रुटि में परिणाम (रहस्यमय ढंग से एक ;
उम्मीद)। try
कथन कार्यों में टाइप परिभाषा/घोषणा को स्थानांतरित करना, जो निश्चित रूप से संबंधित स्कोप में स्थानांतरित करता है। जब मैं बंद होने से अपने AutoClosable
से अधिक चाहता हूं, तो मैं इस बारे में जान सकता हूं कि मुझे में रुचि है क्यों संकलक को इसकी आवश्यकता होती है।
जावा 9 के रूप में यह पर्याप्त है यदि यह एक अभिव्यक्ति है जो अंतिम या प्रभावी रूप से अंतिम चर के संदर्भ को दर्शाती है। – aioobe
जेडीके अपडेट - https://bugs.openjdk.java.net/browse/JDK-7196163 –