scala> class C
defined class C
scala> class subC extends C
defined class subC
scala> class A { type T = C}
defined class A
scala> class subA extends A { override type T = subC}
<console>:10: error: overriding type T in class A, which equals C;
type T has incompatible type
class subA extends A { override type T = subC}
^
Run Code Online (Sandbox Code Playgroud)
在上面的例子中,我收到一条错误消息,我无法覆盖类中的类型字段A(即使所选类型subC扩展了类C).
是否可以覆盖类型字段?如果是的话,上面的例子有什么问题?