इनहेरिटेंस कॉन्सेप्ट को फॉर्म करें, यदि वर्तमान वर्ग में कुछ पर्टिकुलर विधि उपलब्ध नहीं है तो यह सुपर क्लास में उस विधि की खोज करेगा। यदि उपलब्ध हो तो क्रियान्वित होता है।
यह AbstractList<E>
कक्षा add()
पद्धति को कार्यान्वित करता है जो फेंकता है UnsupportedOperationException
।
जब आप एक सरणी से एक संग्रह Obejct में परिवर्तित कर रहे हैं। यानी, संग्रह-आधारित एपीआई के लिए सरणी-आधारित तो यह आपको निश्चित-आकार संग्रह वस्तु प्रदान करने वाला है, क्योंकि एरे का व्यवहार निश्चित आकार का है।
java.util.Arrays.asList (T ... a)
विरूपण के लिए नमूने का नमूना लें।
public class Arrays {
public static <T> List<T> asList(T... a) {
return new java.util.Arrays.ArrayList.ArrayList<>(a); // Arrays Inner Class ArrayList
}
//...
private static class ArrayList<E> extends AbstractList<E> implements RandomAccess, java.io.Serializable {
//...
}
}
public abstract class AbstractList<E> extends AbstractCollection<E> implements List<E> {
public void add(int index, E element) {
throw new UnsupportedOperationException();
}
public E set(int index, E element) {
throw new UnsupportedOperationException();
}
public E remove(int index) {
throw new UnsupportedOperationException();
}
public Iterator<E> iterator() {
return new Itr();
}
private class Itr implements Iterator<E> {
//...
}
public ListIterator<E> listIterator() {
return listIterator(0);
}
private class ListItr extends Itr implements ListIterator<E> {
//...
}
}
उपर्युक्त स्रोत के रूप में आप उस java.util.Arrays.ArrayList
वर्ग का निरीक्षण कर सकते हैं @Override add(index, element), set(index, element), remove(index)
। तो, वंशानुक्रम से यह सुपर AbstractList<E>
क्लास add()
फ़ंक्शन को निष्पादित करता है जो फेंकता है UnsupportedOperationException
।
जैसा AbstractList<E>
कि एक अमूर्त वर्ग है यह कार्यान्वयन को प्रदान करता है iterator() and listIterator()
। इसलिए, हम सूची ऑब्जेक्ट पर पुनरावृति कर सकते हैं।
List<String> list_of_Arrays = Arrays.asList(new String[] { "a", "b" ,"c"});
try {
list_of_Arrays.add("Yashwanth.M");
} catch(java.lang.UnsupportedOperationException e) {
System.out.println("List Interface executes AbstractList add() fucntion which throws UnsupportedOperationException.");
}
System.out.println("Arrays → List : " + list_of_Arrays);
Iterator<String> iterator = list_of_Arrays.iterator();
while (iterator.hasNext()) System.out.println("Iteration : " + iterator.next() );
ListIterator<String> listIterator = list_of_Arrays.listIterator();
while (listIterator.hasNext()) System.out.println("Forward iteration : " + listIterator.next() );
while(listIterator.hasPrevious()) System.out.println("Backward iteration : " + listIterator.previous());
आप फिक्स्ड-साइज़ ऐरे फॉर्म कलेक्शन क्लास भी बना सकते हैं Collections.unmodifiableList(list);
नमूना स्रोत:
public class Collections {
public static <T> List<T> unmodifiableList(List<? extends T> list) {
return (list instanceof RandomAccess ?
new UnmodifiableRandomAccessList<>(list) :
new UnmodifiableList<>(list));
}
}
ए Collection
- कभी-कभी कंटेनर कहा जाता है - बस एक वस्तु है जो कई तत्वों को एक इकाई में समूहित करता है। एकत्रित डेटा को संग्रहीत करने, पुनः प्राप्त करने, हेरफेर करने और संचार करने के लिए संग्रह का उपयोग किया जाता है।
@यह सभी देखें