例如,Exception.allCatch
定义为
def allCatch[T]: Catch[T]
为什么不只是
val allCatch: Catch[Nothing]
它的论点何时Catch
是协变的?
或者,为什么PartialFunction
对象定义
def empty[A, B]: PartialFunction[A, B]
而不仅仅是
val empty: PartialFunction[Any,Nothing]
?
更新:到目前为止,答案似乎没有抓住重点。因此,请在您的答案中包含一个真正针对该问题的具体示例。例如:显示一段可以def empty[A, B]: PartialFunction[A, B]
与val empty: PartialFunction[Any,Nothing]
.