Wann sollten Platzhalter in Java Generics verwendet werden?

dies ist aus Kopfüber Java: ( Seite 575 )

:

public <T extends Animal> void takeThing(ArrayList<T> list)

Macht das gleiche wie dieses:

public void takeThing(ArrayList<? extends Animal> list)

So, hier ist meine Frage: wenn Sie sind genau die gleichen, warum wir nicht schreiben

public <? extends Animal> void takeThing(ArrayList<?> list)

oder

public void takeThing(ArrayList<T extends Animal> list)

Auch, wenn wäre es nützlich zu verwenden ? statt ein T in der Deklaration einer Funktion ( wie oben ) mit Generics, oder für eine Klasse Erklärung? Was sind die Vorteile?

InformationsquelleAutor der Frage Koray Tugay | 2013-05-23

Schreibe einen Kommentar