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

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.

主站蜘蛛池模板: 楚雄市| 乐业县| 灵山县| 盐源县| 宁明县| 崇左市| 金山区| 犍为县| 耒阳市| 涿鹿县| 宜宾市| 勃利县| 甘德县| 上饶市| 沛县| 得荣县| 巴里| 勐海县| 宣武区| 太仓市| 全南县| 定结县| 乐昌市| 麻阳| 合水县| 五原县| 乐亭县| 谢通门县| 通辽市| 蚌埠市| 新建县| 南召县| 弋阳县| 滁州市| 安远县| 沁阳市| 辽宁省| 阳泉市| 保亭| 达州市| 株洲市|