是scala.Singleton纯编译小说吗?

时间:2011-05-24 23:30:03

标签: scala types singleton language-design specifications

Scala Language Specification根据§3.2.1说明:

  

稳定类型是单身   类型或声明的类型   特征scala.Singleton的子类型。

我在源代码,ScalaDoc和二进制jar文件中都找不到scala.Singleton

尝试REPL导致:

scala> class Foo extends Singleton
<console>:9: error: illegal inheritance from final trait Singleton
       class Foo extends Singleton
                         ^
<console>:9: error: illegal inheritance; superclass Any
 is not a subclass of the superclass Object
 of the mixin trait ScalaObject
       class Foo extends Singleton
                 ^

scala.Singelton生活在哪里,目的是什么?

1 个答案:

答案 0 :(得分:9)

终于找到了一些东西:

  

Singleton类型本质上是一个   用于存在的编码技巧   值。即

T forSome { val x: T } 
  

变成了

[x.type := X] T forSome { type X <:T with Singleton } 

来源:http://scala-programming-language.1934581.n4.nabble.com/scala-Singleton-td1940630.html