Im lectura de esta página http://www.scala-lang.org/node/137, entiendo lo que la covarianza es y límites inferiores también, pero lo que no está claro es esta línea:límites Scala tipo inferior y la covarianza
Desafortunadamente, este programa no se compila, porque una anotación de covarianza solo es posible si la variable de tipo solo se utiliza en las posiciones covariantes . Dado que la variable de tipo T aparece como un tipo de parámetro del método anteponer, esta regla se rompe.
qué elem
Tiene que haber una instancia de un supertipo de T
, si ListNode
ya es covariante qué elem
no es posible anteponer a la lista actual.
La explicación es bastante sencillo. La variable de tipo T aparece como un tipo de parámetro. Esta no es una posición covariante. ¿Qué plantea exactamente un problema aquí? –