根據我的理解,如果A類和B類沒有任何參數,那麼ClassTag
可以在這裏使用,但由於他們確實有參數,不知道我怎麼能避免在這裏創建2個方法,一個用於SimpleA,另一個用於SimpleB身體..Scala - 使用參數實例化泛型?
trait Simple {
val id: UUID
val name: String
}
case class SimpleA(id: UUID, name: String) extends Simple
case class SimpleB(id: UUID, name: String) extends Simple
def fromTupleToSimple[T <: Simple](sf: (UUID, String)): T = new T(sf._1, sf._2)
試圖實例化T給出了錯誤class type required but T found
。不知道這些類型的問題通常如何解決。
我想'''高清fromTupleToSimple(SF:(UUID,字符串)):Simple'''應該足夠 –
只是好奇,這是什麼用例呢?我的意思是,如果沒有其他參數(要選擇實例化哪個類),爲什麼你會有兩個類? –
@ insan-e那麼,有些方法只能接收SimpleA和其他SimpleB,它們表示diff實體。 – Sofia