定义协变类时,所有方法声明都需要包含以下内容:
[B >: A] //A is the main type variable
有没有办法在类级别声明使B可用,所以我不需要在每种方法中重复这一点?
我尝试了使用type
所能想到的一切,但没有任何东西可以编译。
答案 0 :(得分:1)
事实证明,这是可能的。
class Test[+A] {
type B >: A
def doStuff(b : B): B = ...
}
我以为那里会有一个=
。
注意:我没有彻底测试过。它似乎工作原理相同,但我不确定。