码迷,mamicode.com
首页 > 其他好文 > 详细

Scala伴生对象

时间:2018-01-11 11:33:29      阅读:193      评论:0      收藏:0      [点我收藏+]

标签:family   object   ase   padding   play   variant   对象   color   end   

Scala伴生对象

大部分Scala的单例对象不是单独存在的,而是同时存在相同名称的类。此时这个单例对象是“类”的伴生对象,而类则是“单例对象”的伴生类。类与它的伴生对象必须在同一个资源文件内。

例如:


case class NumberPair(num1: Int, num2: Int)

case class Sum(sumResult: Int)

object NumberPair {
 implicit def add: NumberPair => Sum = {
   np => Sum(np.num1 + np.num2)
 }
}

val np = NumberPair(1, 2)

println(np.sumResult)

此时输出结果为:


3

上面的例子中,伴生对象的成员属性/方法会自动被搜索到和并关联。


Scala伴生对象

标签:family   object   ase   padding   play   variant   对象   color   end   

原文地址:http://blog.51cto.com/5705145/2059702

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!