java - How is the ArrayList referenced in a getElementAt() method -


यह जावा में है।

ठीक है, इसलिए मैं अमूर्त विधि getElementAt (int ) । मैं इस विधि को ओवरराइड चाहता हूं ताकि यह किसी अर्रेइस्ट के भीतर किसी विशिष्ट अनुक्रमणिका पर एक तत्व पा सकता है चूंकि मैं वास्तव में विधि में एक ArrayList नहीं गुजर रहा हूं, मुझे नहीं पता कि यह कैसे संदर्भित है।

  someArrayList.getElementAt (int n);  

सार्वजनिक वर्ग ListEngine AbstractListModel का विस्तार करता है

और मैं वर्ग को ओवरराइड कर रहा हूँ

  getElementAt (int n)  

अच्छा सारलस्टमोडेल करता है नहीं आइटम कैसे जमा किए जाते हैं, आदि पर एक कार्यान्वयन प्रदान करता है।

< P> आप को ऐसा करने की ज़रूरत है जो सूची ऑब्जेक्ट (या शायद कुछ प्रकार का संग्रह ) का उपयोग / कार्यान्वित करती है और फिर इसे "रीडायरेक्ट" कॉल करती है:

उदाहरण ( ArrayList के साथ):

  सार्वजनिक वर्ग ListEngine & lt; T & gt; ऐबस्ट्रेलिस्टमॉडल {निजी फाइनल एरेएलआईटी & lt; T & gt; आंतरिकडेटा = नया अर्रेलिस्ट & lt; T & gt; (); पब्लिक लिस्टएन्जिइन () {} @ ओवरराइड पब्लिक टी मिलएलिमेंटएट (इंट इंडेक्स) {वापसी इनरएडेटाटेट (इंडेक्स); } @ ओवरराइड पब्लिक इंट साइज़ () {returnDear.sit (); }}  

या आप किसी अन्य सूची (जैसे linkeded list & lt; T & gt; ) का उपयोग कर सकते हैं।

उपरोक्त कार्यान्वयन बिल्कुल बेकार है, क्योंकि आरंभिक आंतरिक डेटा हमेशा खाली रहता है इसके अलावा यदि कुछ को आंतरिक डेटा में संशोधित किया जाता है, तो आपको सूचीकर्ताओं को सूचित करने के लिए fireContentsChanged कॉल करना पड़ता है (यह इनहेरिटिंग क्लास की जिम्मेदारी है, नहीं तो गंभीर समस्याएं हो सकती हैं क्योंकि कुछ श्रोताओं को इस पर भरोसा हो सकता है)।


Comments

Popular posts from this blog

mysql - How to enter php data into a html multiple select box -

java - Can't add JTree to JPanel of a JInternalFrame -

c++ - Cassandra datastax cpp driver - avoiding unnecessary copies -