对象如何访问超类的成员

时间:2014-04-05 10:53:04

标签: scala

我写了以下代码:

    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时,这些代码可以成功编译,所以我想知道如何访问对象中的超级成员?

1 个答案:

答案 0 :(得分:1)

您无需在super.前面添加mem;只需使用memTestObj就会从其超类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))