Scala - 扩展泛型类型参数
Scala - Extend Generic Type Parameter
抱歉,如果这是重复的。无法通过一些基本搜索找到。
如果我有
trait Container[T] { data: T }
我正在尝试扩展 Container 的特征,使数据成为 Traversable[T]。
下面会这样做吗,它是什么mean/how你会读吗?
trait Extension[T] extends Container[Traversable[T]]
是的,Extension[T] 是一个 Container[Traversable[T]],这意味着它只能将 Traversable[T] 作为数据保存。
请注意,您可能希望定义 Extension[+T]
而不是 Extension[T]
(对 Container
也执行此操作)。这意味着 Extension[Cat]
是 Extension[Animal]
的子类。
抱歉,如果这是重复的。无法通过一些基本搜索找到。
如果我有
trait Container[T] { data: T }
我正在尝试扩展 Container 的特征,使数据成为 Traversable[T]。
下面会这样做吗,它是什么mean/how你会读吗?
trait Extension[T] extends Container[Traversable[T]]
是的,Extension[T] 是一个 Container[Traversable[T]],这意味着它只能将 Traversable[T] 作为数据保存。
请注意,您可能希望定义 Extension[+T]
而不是 Extension[T]
(对 Container
也执行此操作)。这意味着 Extension[Cat]
是 Extension[Animal]
的子类。