Scala伴生對象


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


上面的例子中,伴生對象的成員屬性/方法會自動被搜索到和並關聯。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章