मैं हाल ही में इस बात पर अड़ गया हूं कि कितनी उपयोगी अपरिवर्तनीय वस्तुएं हैं और जैसे कि यदि आप किसी निर्माणकर्ता को तत्व पास करते हैं और आपकी कक्षा अपरिवर्तनीय होनी चाहिए, तो आपको इन तत्वों की नकल करनी होगी यदि वे स्वयं अपरिवर्तनीय नहीं हैं।
इसके लिए मेरे प्रोजेक्ट के बारे में बहुत अधिक जाँच या ज्ञान की आवश्यकता है, क्योंकि यदि मेरे पास है
public A(B foo)
और B
अपरिवर्तनीय नहीं है, A
मुझे कॉपी करना होगा B
। अब कल्पना B
अपरिवर्तनीय लगती है, लेकिन स्वयं के पास कंस्ट्रक्टर में उत्परिवर्तित कक्षाएं हैं और इसी तरह।
यदि जावा में एक वर्ग अपरिवर्तनीय है, तो क्या दस्तावेज़ीकरण के लिए एक मानक या सर्वोत्तम प्रथा है? ऐसा लगता है कि @immutable
Javadoc में कोई कीवर्ड नहीं है ।
@Immutable एनोटेशन कुछ पूरी तरह से और ऑटो वर्ग पीढ़ी के लिए अलग-अलग मानक जावा का हिस्सा नहीं हो रहा है।