¿Puede alguien decirme cuáles son las diferencias entre el primer y el segundo código? MaxPQ significa cola de prioridad, que es una colección de objetos "clave" que se pueden comparar entre sí.implementa vs extiende en genéricos en Java
Código 1:
public class MaxPQ<Key extends Comparable<Key>>{
...
}
Código 2:
public class MaxPQ<Key implements Comparable<Key>>{
...
}
El segundo código no compila, pero no es intuitivo para mí por qué necesitamos extender en lugar de implementar interfaces cuando se usa un genérico
Una pregunta similar se puede encontrar en [aquí] [1]. [1]: http://stackoverflow.com/questions/976441/java-generics-why-is-extends-t-allowed-but-not-implements-t – krakover