让我们说,我有以下特点。
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"
}
我可以理解错误信息。但是,在对象的情况下,我如何实现类似的东西呢?