scala对象在扩展需要类型参数的特征时如何将其类型传递给特征?

时间:2017-01-09 05:43:23

标签: scala typeerror

让我们说,我有以下特点。

trait Stringify[T] {
  def stringify(t:T):String;
}

以下作品:

case class Simple() extends Stringify[Simple] {
  override def stringify(t: Simple): String = t.toString
}

但是,当我执行以下操作时,编译器会抛出错误(非法循环引用):

case object Simple2 extends Stringify[Simple2.type] {
  override def stringify(t: Simple2.type): String = "Simple2"
}

我可以理解错误信息。但是,在对象的情况下,我如何实现类似的东西呢?

0 个答案:

没有答案