Podpis java.util.Collections.max wygląda następująco:<T rozszerza Object & E> vs <T extends E>
public static < T rozszerza Object & Porównywalne <? super T >> T max (kolekcja kolekcji);
Z tego co rozumiem, to w zasadzie oznacza, że muszą T być zarówno java.lang.Object i java.lang.Comparable<? super T>>,
Jednakże, ponieważ każdy java.lang.Comparable jest również java.lang.Object, jaka jest różnica między podpisaniem wyżej i ten poniżej ? :
public static < T przedłuża Porównywalne <? super T >> T max (kolekcja kolekcji);
Dzięki za link =) Btw znasz jakieś narzędzia do sprawdzania skasowanych sygnatur po kompilacji? – Pacerier
Nie to, co wiem, ale może [to] (http://blog.xebia.com/2009/03/12/a-general-purpose-utility-to-retrieve-java-generic-type-values/) może dać pewne wskazówki na ten temat. Sugeruję również przeczytanie sekcji "Typ Erasure" w FAQ Generycznych Angeliki Langer. – nobeh
OK dzięki za pomoc =) – Pacerier