【发布时间】:2019-03-16 04:47:54
【问题描述】:
这是可以轻松实现而没有任何问题的原始特征:
trait ZPar[-KNV,+KV] {
def get(i: KNV):List[KV]
}
现在我正在尝试使用边界来模拟方差(类似于 dotty 所做的)
trait ZPar[KNV,KV] {
def get[R >: KNV](i: R):List[_<:KV]
}
目前看起来不错。直到我尝试实现它:
object ZParImp extends ZPar[String,Int]{
override def get(i: String):List[_<:Int] = {
val v:String = i
List(5)
}
}
//ERROR: method get overrides nothing
方法get 不能像那样被覆盖。
有没有办法覆盖方法get?
【问题讨论】: