为什么我可以说一个类型字段具有一个类的类型,其中混合了另一个类(当一个类中只能混合特征时)?
例子:
scala> class A
defined class A
scala> class B extends A
defined class B
B
不允许混入A
:
scala> new A with B
<console>:10: error: class B needs to be a trait to be mixed in
new A with B
^
但这是可能的:
scala> class E {type T = A with B}
defined class E
scala> new E
res1: E = E@1f2bc83