Open kun-song opened 6 years ago
Scala 的类型系统中,Nothing 处于最底层,Nothing 可以作为任意类型的子类:
Nothing
sealed trait Try[+T] final case class Success[T](v: T) extends Try[T] final case class Failure(ex: Exception) extends Try[Nothing]
Try 是协变类型,因此 Try[Nothing] 是任意 Try 的子类,而 Failure 继承了 Try[Nothing],所以 Failure 也是任意 Try 类型的子类。
Try
Try[Nothing]
Failure
Scala 的类型系统中,
Nothing
处于最底层,Nothing
可以作为任意类型的子类:Try
是协变类型,因此Try[Nothing]
是任意Try
的子类,而Failure
继承了Try[Nothing]
,所以Failure
也是任意Try
类型的子类。