ग्रहण नियॉन में, अगर मैं इस जावा कोड लिखने: इस तरह केएक्लिप्स स्ट्रीम के लिए रिसाव चेतावनी क्यों नहीं दिखाता है?
public class MyStream<T> implements Stream<T> {
// implementation
}
रूप
Stream<Object> stream = Stream.builder().build();
मुझे कोई रिसाव चेतावनी मिलता है, लेकिन अगर मैं Stream
लागू है, और मैं इसी तरह के कोड लिखने
Stream<Object> stream = new MyStream<>();
मुझे Resource leak: 'stream' is never closed
चेतावनी मिलती है। यह केवल ग्रहण में होता है, जबकि javac
के साथ संकलन किसी भी चेतावनी जारी नहीं करता है।
नोट मैं स्ट्रीम को बंद करने के तरीके के बारे में कोई जवाब नहीं ढूंढ रहा हूं, लेकिन एक उत्तर के लिए जो एक ही इंटरफेस के लिए इस अलग व्यवहार के कारण बताता है।