Scala 重写特性内对象内的函数
假设我有这样的东西:Scala 重写特性内对象内的函数,scala,overriding,Scala,Overriding,假设我有这样的东西: trait A { object B { def doSomething = "test" } } class C extends A { def out = print(B.doSomething) } class D extends A { // override B.doSomething } 如何覆盖对象B内部的函数doSomething?这是一种重复,但有两个不同的问题: 首先。第二, 你没有正确回答这个问题。你似乎只是把问题改写
trait A {
object B {
def doSomething = "test"
}
}
class C extends A {
def out = print(B.doSomething)
}
class D extends A {
// override B.doSomething
}
如何覆盖
对象B
内部的函数doSomething
?这是一种重复,但有两个不同的问题:
首先。第二,
你没有正确回答这个问题。你似乎只是把问题改写成你想要的样子。问题假设您无法更改原始特征/对象/功能。你已经把这个假设抛到了窗外,回答了你自己的问题。
class A{
class B{
def foo = 1
}
}
class C extends A{
class B extends super.B{
override def foo = 2
}
}