Was ist das?
Wie rgettman angegeben, es ist ein generischer Typ LoadTarget
mit einem Typ Argumente eines unteren begrenzt Wildcard gesetzt.
Was erlaubt es?
Zur Laufzeit kann eine LoadTarget
Variable mit einem Wert des gleichen Typs substituiert (gesetzt) werden, wobei das Argument type PopulationLoadContext
oder ein Vorgänger ist.
Warum?
Um Flexibilität zu ermöglichen - eine Familie von verschiedenen instanziierten Typen kann sich gegenseitig ersetzen und gut funktionieren. Innerhalb von LoadTarget
wird der type-Parameter für Methodenparameter (Eingabe) oder für obere Typgrenzen von intern instantiierten generischen Typen verwendet. In diesen Fällen ist ein breiterer Typ für den ursprünglichen Typ ersetzbar, weil er passender ist. Der generische Typ wird gesagt, Kontra haben, mit seiner Art Parameter
http://docs.oracle.com/javase/tutorial/java/generics/subtyping.html –
Siehe http://stackoverflow.com/questions/3847162/java-generics-super-keyword –
+1: für lerne mich etwas Neues :) –