官术网_书友最值得收藏!

Symbol literals

A symbol has a name, and it can be defined as a single quote (') followed by alphanumeric identifier:

scala> val aSymbol = 'givenName
aSymbol: Symbol = 'givenName

scala> aSymbol.name
res10: String = givenName

We don't use symbols a lot in normal Scala programs. If we try to dig down deeper into symbols in Scala, we get to know that everything that we define in Scala and give a name to is a symbol. We can check the absolute type for a symbol:

scala> import scala.reflect.runtime.universe._
import scala.reflect.runtime.universe._

scala> typeOf[Symbol]
res12:reflect.runtime.universe.Type= scala.reflect.runtime.universe.Symbol

So this Symbol is from Scala's reflection package. We're not going to dig any deeper. If you're curious though, I would recommend going through the Scala documentation at http://docs.scala-lang.org/overviews/reflection/symbols-trees-types.html.

So that's all about Symbol literals.

主站蜘蛛池模板: 巴中市| 饶平县| 长子县| 河北区| 香格里拉县| 苗栗县| 灵丘县| 舞钢市| 康保县| 黄山市| 福贡县| 且末县| 宁波市| 读书| 大竹县| 玉屏| 卢湾区| 南漳县| 宣威市| 宝坻区| 屯门区| 孝义市| 顺义区| 三河市| 保亭| 两当县| 芷江| 张家川| 梁河县| 紫金县| 德州市| 阳东县| 安吉县| 金坛市| 密山市| 墨玉县| 县级市| 百色市| 扎兰屯市| 寻乌县| 马边|