एक उदाहरण चर वर्तमान मैं एक वर्ग है जो अपरिवर्तनीय हैअचल स्थिति के रूप में ArrayList
मान लीजिए मैं प्रकार ArrayList के एक सदस्य चर के लिए एक गेटर विधि है जब। उस स्थिति में जब मुझे उस चर के संदर्भ मिलते हैं, तो मैं इससे तत्व जोड़ या निकाल सकता हूं। उस स्थिति में अपरिवर्तनीयता का उल्लंघन हो रहा है।
कोई भी इस अवधारणा को विवरण में समझा सकता है?
देखें http://stackoverflow.com/questions/8892350/immutable-vs-unmodifiable-collection – Zaki
जोशुआ ब्लोच का "प्रभावी जावा" भी देखें, आइटम 24: आवश्यकता होने पर रक्षात्मक प्रतियां बनाएं। अध्याय ऑनलाइन उपलब्ध है [यहां] (http://www.informit.com/articles/article.aspx?p=31551&seqNum=2) – mike9322
यदि आप कक्षा को सभी अपरिवर्तनीय माना जाता है, तो सूची _in के संदर्भ को सहेजें 'unmodifiableList' के उदाहरण के रूप में आपकी class_ (प्रतिलिपि बनाने के बाद)। नहीं (अतिरिक्त) रक्षात्मक प्रतियों की आवश्यकता है, और यह रखरखाव के दौरान _your_ वर्ग को संशोधित करने से रोकता है। –