मैंने समवर्ती हैश मैप के बारे में जेडीके के स्रोत कोड को पढ़ा।जेडीके स्रोतकोड 'अस्थिर' उदाहरणों की 'अंतिम' प्रतिलिपि क्यों लेता है
लेकिन निम्नलिखित कोड मुझे उलझन में:
public boolean isEmpty() {
final Segment<K,V>[] segments = this.segments;
...
}
मेरा प्रश्न है:
"this.segments" घोषित किया जाता है:
final Segment<K,V>[] segments;
तो, यहाँ, की शुरुआत में विधि, एक ही प्रकार के संदर्भ घोषित, एक ही स्मृति को इंगित करें।
लेखक ने ऐसा क्यों लिखा? उन्होंने इसका उपयोग क्यों नहीं किया। सेगमेंट सीधे? क्या कोई कारण है?
तो अगर कोई 'इस। सेगमेंट' सामग्री को बदलता है, तो आप अपने 'सेगमेंट' में उस परिवर्तन को नहीं देख पाएंगे? – brimborium
बेशक आप इसे देखेंगे। लेकिन अगर कोई 'सेगमेंट' के लिए कुछ और निर्दिष्ट करता है, तो आप निश्चित रूप से उस से अलग हो जाएंगे। –
आह हाँ, यकीन है। अपने उत्तर को गलत समझाएं ...; – brimborium