給定一類與covariant
類型的參數列表:LUB不變類的實例
scala> class G[+A]
defined class G
下面的列表顯示了一個最小上限的List[G[Any]]
。
scala> List(new G[Int], new G[String])
res1: List[G[Any]] = List([email protected], [email protected])
然後,給定與invariant
類型參數的類:
scala> class F[A]
defined class F
我看到的List[F[_ >: String with Int]]
一個最小上限(LUB)。
scala> List(new F[Int], new F[String])
res0: List[F[_ >: String with Int]] = List([email protected], [email protected])
一個簡單的例子說明了一個List[Any]
LUB:
scala> List((42 : Int), "foobar")
res2: List[Any] = List(42, foobar)
請解釋的F
的List
的LUB。