【发布时间】:2014-04-30 19:25:33
【问题描述】:
我正在阅读有关 type classes 的内容,其中提到了隐式对象:
object Math {
trait NumberLike[T] {
def plus(x: T, y: T): T
def divide(x: T, y: Int): T
def minus(x: T, y: T): T
}
object NumberLike {
implicit object NumberLikeDouble extends NumberLike[Double] {
def plus(x: Double, y: Double): Double = x + y
def divide(x: Double, y: Int): Double = x / y
def minus(x: Double, y: Double): Double = x - y
}
implicit object NumberLikeInt extends NumberLike[Int] {
def plus(x: Int, y: Int): Int = x + y
def divide(x: Int, y: Int): Int = x / y
def minus(x: Int, y: Int): Int = x - y
}
}
}
它们是什么?它们在哪里被描述?我只在web 上找到了隐式类的定义,但没有找到隐式对象的定义。
【问题讨论】: