如何在Scala中覆盖toString方法并将其替换为动态文本

时间:2016-12-28 13:42:44

标签: java scala

我正在尝试覆盖Scala中的toString方法。它必须返回自创建类实例以来经过的时间。传递的时间是在timePassed()方法中计算的。

我不知道如何强制toString方法执行timePassed方法并在调用它时生成适当的结果。

1 个答案:

答案 0 :(得分:9)

toString不是魔术,它可以自由地调用它想要的任何方法,拥有局部变量等。

override def toString = s"The LED has a status of ${timePassed()}."

override def toString = {
  val internalTime = timePassed()
  s"The LED has a status of $internalTime."
}