soc*_*soc 9 singleton programming-languages scala language-design class
考虑这样的事情:
object Singleton
val cls: Class[Singleton] = ???
Run Code Online (Sandbox Code Playgroud)
我需要写什么而不是????
我试过classOf[Singleton],classOf[Singleton.type],Singleton.type,但毫无效果.
(我当然知道getClass,运行时版本classOf,但那不是我要问的.)
这是一个解决方案,但它并不漂亮......
object Singleton
val cls : Class[Singleton] = Singleton.getClass.asInstanceOf[Class[Singleton]]
Run Code Online (Sandbox Code Playgroud)
编辑:阅读完另一个问题/答案后完成解决方案:Scala相当于Java java.lang.Class <T> Object
注1:类型擦除会阻止它特别有用,例如在模式匹配中.请参阅上面的参考问题/答案,以获得更好的解释
注2:该scala -explaintypes标志在理解类型错误时非常方便.
HTH