对不起,如果这是重复的。在一些基本的搜索中找不到。
如果我有
trait Container[T] { data: T }
我正在尝试一个trait扩展容器,使数据是可遍历的[T]。
下面的句子会这样做吗?它是什么意思/你会怎么读?
trait Extension[T] extends Container[Traversable[T]]
是的,扩展名[T]是一个容器[Traversable[T]],这意味着它只能将Traversable[T]作为数据保存。
请注意,您可能需要定义 Extension[+T] 而不是 Extension[T] (为了 Container 也一样)。这意味着 Extension[Cat] 是 Extension[Animal] .
Extension[+T]
Extension[T]
Container
Extension[Cat]
Extension[Animal]