Im lettura di questa pagina http://www.scala-lang.org/node/137, ho capito che cosa covarianza è e limiti inferiori pure, ma ciò che non è chiaro è questa linea:Scala tipo inferiore limiti e le covarianza
Purtroppo, questo programma non si compila, perché un'annotazione di covarianza è possibile solo se la variabile di tipo viene utilizzata solo nelle posizioni covariant . Poiché la variabile di tipo T appare come un tipo di parametro di metodo anteposto, questa regola è interrotta.
perché elem
deve essere un'istanza di un supertipo di T
, se ListNode
è già covariant perché elem
non può precedere l'elenco corrente.
La spiegazione è abbastanza semplice. Digitare la variabile T come un tipo di parametro. Questa non è una posizione covariante. Cosa pone esattamente un problema qui? –