在下面的代码中,如果我打印DDD().hey(),我将看到内部的'9‘然后是1的输出。
3是控制这种vs约定的一种方法吗?例如,如果我想强制CCC的嘿()而不是BBB的(而不是简单地交换混入顺序)发生该怎么办?
trait AAA {
def hey(): Int
}
trait BBB extends AAA {
override def hey(): Int = 1
}
trait CCC extends AAA {
override def hey(): Int = 5
}
case class DDD() extends CCC with BBB {
override def hey(): Int = 9
def test(): Int = {
println("Inside: "+hey())
super.hey() // Can I control what 'super' means? BBB or CCC?
}
}发布于 2018-02-06 04:42:09
https://stackoverflow.com/questions/48630534
复制相似问题