我的情況是這樣的:參考抽象類型成員
trait A {
type B
def foo(b: B)
}
trait C[D <: A] {
val d: D
def createB(): D#B
def bar() {
d.foo(createB)
}
}
在REPL,它抱怨
<console>:24: error: type mismatch;
found : D#B
required: C.this.d.B
a.bar(createB())
這有什麼錯呢?和(如果可能的話)如何糾正這個代碼?