Qualcuno potrebbe dirmi come posso evitare l'avviso nel blocco di codice qui sotto:astratto tipo di pattern non è selezionata in quanto viene eliminata per la cancellazione
abstract class Foo[T <: Bar]{
case class CaseClass[T <: Bar](t: T)
def method1 = {
case CaseClass(t: T) => println(t)
csse _ =>
}
}
Questo si traduce in un avviso del compilatore:
abstract type pattern T is unchecked since it is eliminated by erasure
case CaseClass(t: T) => println(t)
^
cosa vuol 'T <: significa bar' sulla linea 1? –
Significa semplicemente che il tipo di argomento t è delimitato superiormente da T. O in altre parole T è un sottotipo di Barra o Barra stessa. –