गुजर बिना, मैं कोड का टुकड़ा भर में आया है:जेनेरिक्स प्रकार पैरामीटर घिरा हो रही वास्तविक प्रकार
public static <K,V> HashMap<K,V> newHashMap() {
return new HashMap<K,V>();
}
और हम इस तरह HashMap
का एक उदाहरण बनाने के लिए, इस का उपयोग कर सकते हैं:
Map<String, List<String>> anagrams = newHashMap();
अब सवाल यह है कि विधि newHashMap
को आवश्यक प्रकार को पारित किए बिना बुलाया जाता है (इस मामले में इसकी (String, List<String>
), लेकिन फिर भी जावा सही प्रकार का निर्माण कर रहा है। कैसे?
मैं यहाँ उलझन में हूँ, कैसे K,V
प्रकार है कि कोड के बाईं ओर बताया गया है घिरा हो रही है: भी पर गुजर बिना
Map<String, List<String>>
:
newHashMap();