首页 > 解决方案 > Scala 类扩展了 Trait

问题描述

当试图扩展一个具有这样具体定义的特征的类时

trait logmsg
{
  printmsg(msg : String)  = println(msg)
}

class DimensionUtils extends logmsg {
  printmsg("hello")
}

为什么repl会出现以下错误:

**error**
defined trait logmsg
<console>:16: error: not found: value printmsg
          printmsg("hello")

标签: scalaclasstraits

解决方案


您的代码是正确的,我在 Eclipse 编辑器中尝试创建一个 Scala 项目,得到的答案是“你好”,这是运行的代码。

object StackQ extends App {
  val obj = new DimensionUtils
}

trait log_msg {
  def printmsg(msg: String) = println(msg)
}

class DimensionUtils extends log_msg {
  printmsg("hello")
}

推荐阅读