我写了以下代码:
class TestClass(val mem:Int)
object TestObj extends TestClass(3){
var sum = 5
def apply(a : Int, b :Int, ext : TestClass) = sum + a + b + super.mem + ext.mem
}
println(TestObj(2,4,new TestClass(2))
当我从方法apply中删除super.mem时,这些代码可以成功编译,所以我想知道如何访问对象中的超级成员?
答案 0 :(得分:1)
您无需在super.
前面添加mem
;只需使用mem
,TestObj
就会从其超类TestClass
继承它。
class TestClass(val mem: Int)
object TestObj extends TestClass(3) {
var sum = 5
def apply(a: Int, b: Int, ext: TestClass) = sum + a + b + mem + ext.mem
}
println(TestObj(2, 4, new TestClass(2))