【发布时间】:2013-11-18 17:37:15
【问题描述】:
我已经知道了:
-
<:是 Scala 语法类型约束 - 而
<:<是利用 Scala 隐式来达到类型约束的类型
例如:
object Test {
// the function foo and bar can have the same effect
def foo[A](i:A)(implicit ev : A <:< java.io.Serializable) = i
foo(1) // compile error
foo("hi")
def bar[A <: java.io.Serializable](i:A) = i
bar(1) // compile error
bar("hi")
}
但我想知道我们什么时候需要使用<: 和<:<?
如果我们已经有了<:,为什么还需要<:<?
谢谢!
【问题讨论】: