List
और List<?>
के बीच क्या अंतर है? मुझे पता है कि मैं List<?>
पर कोई तत्व नहीं जोड़ सकता। क्योंकि यह समय त्रुटि संकलन का कारण बनता है,सूची और सूची <?> जावा में
List<String> myList = new ArrayList<String>();
processList(myList);
processListGeneric(myList);
public static void processList(List myList) {
Iterator it = myList.iterator();
while(it.hasNext())
System.out.println(it.next());
}
public static void processListGeneric(List<?> myList) {
Iterator<?> it = myList.iterator();
while(it.hasNext())
System.out.println(it.next());
}
दो तरीकों में से नाम समान नहीं हो सकती: मैं एक कोड है। तो क्या इन दो दृष्टिकोणों में कोई अंतर है?
यह संकलित नहीं करता है क्योंकि दोनों विधियों का एक ही हस्ताक्षर होगा, क्योंकि जेनेरिक (<>) केवल कंपाइलर द्वारा संकलन समय पर प्रकार के विरुद्ध जांचने के लिए उपयोग किया जाता है। – Sebastien
आप इसमें शून्य जोड़ सकते हैं। तो यह न कहें कि आप इसमें कुछ भी नहीं जोड़ सकते :) –
दूसरी विधि का उपयोग करके 'java.awt.List' के साथ, मुझे नहीं लगता कि आपकी कक्षा संकलित होगी ...;) – Mikaveli