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
上面的例子中,伴生对象的成员属性/方法会自动被搜索到和并关联。
原文地址:http://blog.51cto.com/5705145/2059702
时间: 2024-10-15 10:01:31