मेरी जावा आवेदन में मैं इसप्रतिलिपि बनाने वालों में किसी अन्य वस्तु के निजी क्षेत्र की पहुंच - वास्तव में एक समस्या है?
public MyClass(MyClass src) {
this.field1 = src.field1;
this.field2 = src.field2;
this.field3 = src.field3;
...
}
अब Netbeans 6.9 इस बारे में चेतावनी दी है जैसे कुछ कॉपी-कंस्ट्रक्टर्स है और मुझे आश्चर्य है कि क्या इस कोड के साथ गलत क्या है?
मेरे चिंताओं:
- ही टिककर खेल का उपयोग अवांछित दुष्प्रभाव परिचय हो सकता है। नई वस्तु को अब मूल की प्रति नहीं माना जा सकता है।
- यदि गेटर्स का उपयोग करने की अनुशंसा की जाती है, तो क्या यह नए संगत के लिए सेटर्स का उपयोग करने पर अधिक सुसंगत नहीं होगा?
संपादित करें: वास्तविक चेतावनी और ही उपलब्ध कार्रवाई Netbeans प्रदान करता है एक @SuppressWarnings("AccessingNonPublicFieldOfAnotherObject")
मेरे कोड जोड़ रहा है "एक और वस्तु की निजी क्षेत्र की पहुँच" है वास्तव में दिए गए उदाहरण के रूप में के रूप में तुच्छ है।
नेटबीन्स से चेतावनी क्या है? – Timothy
मेरा प्रश्न –
अपडेट किया गया है, मैं केवल कारण पर अनुमान लगा सकता हूं: कुछ लोग सोचते हैं कि 'निजी' का अर्थ है कि केवल वर्तमान * ऑब्जेक्ट * फ़ील्ड तक पहुंच सकता है (जबकि वास्तव में उसी वर्ग की अन्य वस्तुएं भी क्षेत्र तक पहुंच सकती हैं)। हो सकता है कि यह चेतावनी एक अनुस्मारक के रूप में है कि यह वास्तव में संभव है और लोगों को गलती से ऐसा करने से रोकने के लिए। –