54
我有一个基本的抽象类(特征)。它有一个抽象方法foo()
。它由几个派生类扩展和实现。我想要创建一个可以混合到派生类中的特征,以便它实现foo()
,然后调用派生类的foo()
。在Scala中重写特征和抽象方法
喜欢的东西:
trait Foo {
def foo()
}
trait M extends Foo {
override def foo() {
println("M")
super.foo()
}
}
class FooImpl1 extends Foo {
override def foo() {
println("Impl")
}
}
class FooImpl2 extends FooImpl1 with M
我试着自我类型和结构类型,但我不能得到它的工作。