注意:第一个示例有效.它显示了我想要的东西.第二个例子表明我想要在没有样板的情况下声明它但没有这样做.
我只想简单一点:
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)拒绝了.是否有任何魔法像#标志来表示创建的对象?