lesson - java<>
<T extiende Object & E> vs<T extiende E> (1)
Esta pregunta ya tiene una respuesta aquí:
La firma de java.util.Collections.max ve así:
public static <T extiende Object & Comparable <? super T >> T max (Colección colección);
Por lo que entiendo, básicamente significa que T debe ser un java.util.Collections.max y un java.lang.Comparable <? super t >> ,
Sin embargo, dado que cada java.lang.Comparable es también un java.lang.Object , ¿cuál es la diferencia entre la firma anterior y la siguiente? :
public static <T se extiende Comparable <? super T >> T max (Colección colección);
Para preservar la compatibilidad binaria : se describe completamente here . La segunda firma realmente cambia el tipo de retorno del método a Comparable
y pierde la generalidad de devolver un Object
. La firma original conserva ambos.