Ich las Konzept des Typs löschen in Generika. Während ich den unten stehenden Code ausführte, war ich verwirrt.Typ löschen in Generika Verwirrung
public class CollectionsWild {
void Test(Collection<?> t){
System.out.println("Collection");
}
void Test(List<Integer> t){
System.out.println("List");
}
public static void main(String[] args) {
CollectionsWild o = new CollectionsWild();
o.Test(new ArrayList<String>());
}
}
Gemäß dem Löschkonzept Typ "List<Integer> t
" auf "Liste t" in Bytecode umgewandelt. Warum wird mein Methodentest aufgerufen, der Collection als Parameter hat? Es hätte die Methode mit List als Parameter aufrufen sollen
Danke, aber der Link, den Sie gaben, hängt nicht mit dem zusammen, was ich gefragt habe .. –