相关疑难解决方法(0)

引用对象定义中的对象类型


注意:第一个示例有效.它显示了我想要的东西.第二个例子表明我想要在没有样板的情况下声明它但没有这样做.


我只想简单一点:

trait SelfTest[T <: SelfTest[T]] {_ : T =>
  def get : T = this
}
class Test extends SelfTest[Test]
object Test extends Test
Run Code Online (Sandbox Code Playgroud)

但没有样板类定义.像这样的东西:

trait SelfTest[T <: SelfTest[T]] {_ : T =>
  def get : T = this
}
object Test extends SelfTest[Test.type]
Run Code Online (Sandbox Code Playgroud)

但这种方式被scala(illegal cyclic reference involving object Test)拒绝了.是否有任何魔法像#标志来表示创建的对象?

generics scala

6
推荐指数
1
解决办法
488
查看次数

标签 统计

generics ×1

scala ×1